Retrofit2的好处
超级解耦
解耦?解什么耦?
我们在请求接口数据的时候,API接口定义和API接口使用总是相互影响,什么传参、回调等,耦合在一块。有时候我们会考虑一下怎么封装我们的代码让这两个东西不那么耦合,这个就是Retrofit的解耦目标,也是它的最大的特点。
可以配置不同HttpClient来实现网络请求,如OkHttp、HttpClient...
支持同步、异步和RxJava
可以配置不同的反序列化工具来解析数据,如json、xml...
请求速度快,使用非常方便灵活
Retrofit2的使用步骤
定义接口类(封装URL地址和数据请求)
实例化Retrofit
通过Retrofit实例创建接口服务对象
接口服务对象调用接口中的方法,获取Call对象
Call对象执行请求(异步、同步请求)
Retrofit2的使用步骤
定义接口类(封装URL地址和数据请求)
实例化Retrofit
通过Retrofit实例创建接口服务对象
接口服务对象调用接口中的方法,获取Call对象
Call对象执行请求(异步、同步请求)
网络请求适配器(CallAdapter)
Retrofit支持多种网络请求适配器方式:guava、Java8和rxjava
Retrofit2及OkHttp3的区别
Retrofit2使用注解设置请求内容
Retrofit2回调主线程,OkHttp3回调子线程
Retrofit2可以做数据解析转换
Retrofit2可以使用在REST ful网络请求.