一.添加权限
<uses-permission android:name="android.permission.INTERNET"/> <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"/>
二:添加依赖
compile 'io.reactivex.rxjava2:rxjava:2.1.3' compile 'com.squareup.retrofit2:retrofit:2.3.0' compile 'com.squareup.retrofit2:converter-gson:2.3.0' compile 'com.squareup.retrofit2:adapter-rxjava2:2.3.0' compile 'io.reactivex.rxjava2:rxandroid:2.0.1' compile 'com.squareup.okhttp3:okhttp:3.9.0' compile 'com.squareup.okhttp3:logging-interceptor:3.9.0' compile 'com.squareup.retrofit2:converter-scalars:2.3.0'
注意:
- 添加RxAndroid是为了解决线程调度问题。
- okhttp3:logging-interceptor是为了配置缓存策略,必须跟okhttp同一版本号,否则会报错:Failed resolution of: Lokhttp3/internal/Platform
- converter-scalars 用于将请求结果转换为基本类型,一般为String
- converter-gson 用于将请求结果转换为实体类型
三.
retrofit+rxjava网络请求
豆瓣电影的Top250做测试连接,目标地址为:
3.1:创建网络请求返回数据实体类
3.2:创建网络请求方法管理service
3.3:创建retrofit请求过程
3.4:发出请求通过RxJava订阅以及处理返回数据
四:github地址
https://github.com/zxlabo/MvpSample.git