Hướng dẫn sử dụng thư viện Retrofit để call api với Android

Tram Ho

Retrofit là gì ?

A type-safe HTTP client for Android and Java

Retrofit là thư viện phân tích cú pháp phản hồi API bằng cách chuyển đổi API thành Java Interface.
Retrofit rất phổ biến với ưu điểm của nó chính là hiệu năng, thời gian thực thi task nhanh hơn AsyncTask và Volley.

Tuy nhiên Retrofit không tích hợp bất kỳ một bộ chuyển đổi JSON nào để phân tích từ JSON thành các đối tượng Java. Thay vào đó nó đi kèm với các thư viện chuyển đổi JSON sau đây để xử lý điều đó:

  • Gson: com.squareup.retrofit:converter-gson
  • Jackson: com.squareup.retrofit:converter-jackson
  • Moshi: com.squareup.retrofit:converter-moshi

Để sử dụng Retrofit chúng ta thêm dependency trong file build.gradle:

Mình sẽ sử dụng retrofit thông qua 1 api giúp lấy tỉ giá tiền tệ với request dưới đây, bắt đầu thôi!

http://apilayer.net/api/live?access_key=843d4d34ae72b3882e3db642c51e28e6&currencies=VND&source=USD&format=1

Tạo Model Respone

Chúng ta sẽ tạo một Class Model dựa trên JSON trả về của api

Tạo Interface

Các annotation ở interface method và các tham số sẽ thể hiện cách request được xử lý như thế nào.

Request Method

Mỗi phương thức phải có Annotation HTTP cung cấp request method và URL. Có 5 Annotation được tích hợp sẵn: @GET, @POST, @PUT, @DELETE@HEAD

Query parameter

Thêm các parameter yêu cầu

Tạo implemention của interface

Thực hiện request

Retrofit còn hỗ trợ nhiều thứ như URL MANIPULATION,FORM ENCODED, MULTIPART,… mời các bạn tham khảo thêm tại https://square.github.io/retrofit/

Chia sẻ bài viết ngay

Nguồn bài viết : Viblo