Basit Olarak Retrofit2 Kütüphanesinin Kullanımı
Android' de Retrofit Kütüphanesini hiç zorlanmadan basit olarak kullanımını görmek için bu repoyu oluşturdum.
Gerekli kütüphaneler:
compile 'com.squareup.retrofit2:retrofit:2.1.0'
compile 'com.squareup.retrofit2:converter-gson:2.0.2'
compile 'com.google.code.gson:gson:2.7'
Aşamalar:
- Web Service'den çağrıları yapıp, geri dönen değerleri işlememizi sağlayacak fonksiyonların bulunduğu bir Interface oluşturmak.
@GET("login.php")
Call login(@Query("MusteriNo") String musteriNo, @Query("Kod") String kod);
- Web Service'ye istek yaptıktan sonra dönen Json veriyi Serialize edip kullanmamızı sağlayacak bir Model oluşturmak.
Elinizdeki Json veriyi otomatik olarak http://www.jsonschema2pojo.org/ adresinden POJO(Plain Old Java Objects) haline dönüştürebilirsiniz. - Activity'mizden çağrıyı yapacağımız gerekli sınıfları yaratmak.
restAdapter = new Retrofit.Builder()
.baseUrl("websevice_url")
.addConverterFactory(GsonConverterFactory.create())
.build();
restInterface = restAdapter.create(RestInterface.class);
Bu aşamadan sonra Web Service'nize istek yollayacağınız Interface'deki fonksiyonu çağırabilirsiniz.
Call call = restInterface.login(parameter1, parameter2);
call.enqueue(new Callback() {
@Override
public void onResponse(Call call, Response response) {}
@Override
public void onFailure(Call call, Throwable t) {}});
Ha bu arada unutmadan Android Manifest dosyanızdan takdir edersinizki internet iznini vermeniz gerekiyor.
android.permission.INTERNET
Retrofit ile yapabilecekleriniz bundan çok fazla. Retrofit kütüphansi ile ilgili önerebileceğim kaynaklar:
- https://guides.codepath.com/android/Consuming-APIs-with-Retrofit
- https://square.github.io/retrofit/2.x/retrofit/
- http://square.github.io/retrofit/
Projenin kaynak kodları için: Github