Klien HTTP yang aman untuk Android dan Java. Ini memudahkan pengambilan JSON atau data terstruktur lainnya.

Hari ini kita akan mengembangkan aplikasi sederhana yang membuat permintaan HTTP GET sederhana ke server dan mengambil objek JSON sebagai responsnya.



Mari kita mulai dengan membuat proyek di Android Studio

  1. Seperti biasa, buat proyek android
  2. Buka build.gradletingkat aplikasi dan tambahkan dependensi Retrofit, Gson seperti ini.

3. Sekarang tambahkan izinINTERNET di file AndroidManifest.xml.

4. Selanjutnya kita akan mencoba mengambil data JSON ini dari server.

https://jsonplaceholder.typicode.com/posts

Kami akan menggunakan data dummy dari situs web di atas.

5. Sekarang buat kelas Model seperti ini Post.java

Nama variabel harus sama dengan nama kunci JSON

misalnya Nama kunci JSON 'userId', nama variabel harus 'int userId'

Bagaimana jika saya ingin menggunakan nama lain?

Ya, Anda bisa. cukup gunakan anotasi yang disediakan oleh Retrofit '@SerializedName("body")'

6. Selanjutnya, buat file JsonPlaceHolderApi.javaantarmuka. Antarmuka ini mendeklarasikan metode getPosts().

Berikut adalah URL dasar https://jsonplaceholder.typicode.com/

dan ini adalah URL relatif kami https://jsonplaceholder.typicode.com/posts

anotasi retrofit khusus untuk menyandikan detail tentang parameter dan metode permintaan

7. Rancang antarmuka pengguna MainActivity.xml

7. Langkah Terakhir, Dalam metode onCreate() di MainActivity.java buat pegangan untuk antarmuka RetrofitInstance.

Dapatkan Hasil dari Permintaan Asinkron — Permintaan yang berfungsi di latar belakang.

Menggunakan permintaan asinkron memaksa Anda menerapkan Callback dengan dua metode panggilan baliknya: onResponse() dan onFailture().

onResponse() dipanggil ketika respons berhasil dari server.

onFailture()dipanggil ketika URL tidak valid atau URL dihapus secara permanen.

Cuplikan kode berikut mengilustrasikan penerapan yang patut dicontoh.

8. Sekarang jalankan tombol run

Terakhir, Anda akan melihat daftar data teks yang bagus.

Dapatkan proyek lengkapnya di GitHub.



Saran dipersilakan!