Android基于Retrofit2.0+RxJava的结合使用,让你的网络请求更简单
来源:互联网 发布:php编程是什么 编辑:程序博客网 时间:2024/05/16 17:15
最近学习了一种现在非常火的请求网络的方式retrofit2.0,使用起来也是非常的简单它与rxjava的结合也会让你的请求更加的简单,下面上代码,简单的演示一下.
具体的使用
1.首先在自己的工程中导入一下依赖,依赖千万别倒错了,不然就会出现问题.!!
compile 'com.squareup.retrofit2:retrofit:2.0.2' // Retrofit库 compile 'com.squareup.okhttp3:okhttp:3.1.2' // Okhttp库 compile 'com.squareup.retrofit2:converter-gson:2.0.2' compile 'io.reactivex:rxjava:1.0.14' compile 'io.reactivex:rxandroid:1.0.1' compile 'com.squareup.retrofit2:adapter-rxjava:2.0.2'
2.在配置文件中添加权限
<uses-permission android:name="android.permission.INTERNET"/>
3.接下来就该看看代码的实现了.
首先新建一个接口的类
public interface MyApi {//这是请求数据网址的后半部分,前一部分在实例 Retrofit的时候会出现 @GET("a2a/impressApi/news/mergeList?sign=C7548DE604BCB8A17592EFB9006F9265&pageSize=20&gender=2&ts=1871746850&") //正常网络请求返回类型用Call就可以了,但是我们是和Rxjava结合一起使用,所以使用被观察者对象 Observable<News> getCall(@Query("page") int page);//接下来实例化Retrofit,这个可以在此类中实现也可以写在MainActivity中 Retrofit retrofit=new Retrofit.Builder() .baseUrl("http://www.yulin520.com/")//网址的前部分,这里的url与请求的url拼接成一个完整的URL .addConverterFactory(GsonConverterFactory.create())//使用Gson进行解析 .addCallAdapterFactory(RxJavaCallAdapterFactory.create())//支持RxJava,在使用RxJava时必须要加这句话 .build(); MyApi utils=retrofit.create(MyApi.class);}
然后再新建一个MainActivity,实现如下代码
MyApi.utils.getCall(page).subscribeOn(Schedulers.io()) .observeOn(AndroidSchedulers.mainThread()) .subscribe(new Observer<News>() { @Override public void onCompleted() { } @Override public void onError(Throwable e) { } @Override public void onNext(News news) { Log.i("111111", "onNext: "+news.toString()); } });
这样Retrofit和Rxjava就完美的结合使用了.
有哪里不懂可以评论下,看到时会进行解答,请大家多多支持,谢谢大家.
想要深入了解的给大家推荐一篇博客:https://juejin.im/entry/596808f2f265da6c386d0d77
阅读全文
1 0
- Android基于Retrofit2.0+RxJava的结合使用,让你的网络请求更简单
- 使用Retrofit和Rxjava让你的网络请求更简单
- 使用Retrofit和Rxjava让你的网络请求更简单
- RxJava和Retrofit2.0的结合使用
- retrofit2+rxjava的结合使用
- OkGo,一个专注于让网络请求更简单的框架,与RxJava完美结合,比Retrofit更简单易用。
- Android 优雅的让RxJava2.0+Retrofit2.0结合使用
- Android 优雅的让RxJava2.0+Retrofit2.0结合使用
- Android基于Retrofit2.0 封装的超好用的RetrofitClient工具类(完美结合RxJava)
- Android-->Rxjava与Retrofit2的结合实战
- Retrofit2.0 简单实现的网络请求
- Android框架学习之Retrofit(二)RxJava和Retrofit2.0的结合使用
- Android Retrofit2.0-post&get请求&文件上传&结合Rxjava
- 基于RxJava2+Retrofit2的简单易用网络请求框架
- Retrofit2.0的学习以及Rxjava与Retrofit2的结合使用
- 基于Retrofit2.0+RxJava+Dragger2实现不一样的Android网络构架搭建
- 基于Retrofit2.0+RxJava+Dragger2实现不一样的Android网络构架搭建
- 使用MVP+Retrofit+rxjava让你的代码更简洁
- 细数非对称加密与对称加密的区别
- 每天20分钟,只需一年,一年级学生英语听力达到六年级水平!关键是坚持一点都不难!
- Kaggle 发布首份数据科学从业报告 | 不及美国同行1/3,中国数据科学家平均年薪约3万美元
- 【持续更新】j2ee+tomcat实战过程中的问题及解决方案汇总
- Java基础--4运算符
- Android基于Retrofit2.0+RxJava的结合使用,让你的网络请求更简单
- Html常见用法
- 2017.11.8 LeetCode N皇后问题
- RS485(半)全双工实现
- GitHub 发布2017年度开发者报告 JavaScript 依然最受欢迎
- 使用jsonp获取天气预报
- 自定义控件ViewPagerIndicator的使用
- [翻译]WebRender:让网页渲染如丝顺滑
- Altium Designer 13.0 画图技巧