# Retrofit+Rxjava+okhttp基本操作和统一处理的demo
![Preview](https://github.com/wzgiceman/RxjavaRetrofitDemo-master/blob/master/gif/demo.gif)
1.Retrofit+Rxjava+okhttp基本使用方法
2.统一处理请求数据格式
3.统一的ProgressDialog和回调Subscriber处理
4.取消http请求
5.预处理http请求
6.返回数据的统一判断
7.失败后的retry处理
##添加相关引用
```java
/*rx-android-java*/
compile 'io.reactivex:rxjava:+'
compile 'com.squareup.retrofit:adapter-rxjava:+'
compile 'com.trello:rxlifecycle:+'
compile 'com.trello:rxlifecycle-components:+'
/*rotrofit*/
compile 'com.squareup.retrofit2:retrofit:+'
compile 'com.squareup.retrofit2:converter-gson:+'
compile 'com.squareup.retrofit2:adapter-rxjava:+'
compile 'com.google.code.gson:gson:+'
```
##代码使用
```java
// 完美封装简化版
private void simpleDo() {
SubjectPost postEntity = new SubjectPost(new ProgressSubscriber(simpleOnNextListener, this), true);
HttpManager manager = HttpManager.getInstance();
manager.doHttpDeal(postEntity);
}
// 回调一一对应
HttpOnNextListener simpleOnNextListener = new HttpOnNextListener<List<Subject>>() {
@Override
public void onNext(List<Subject> subjects) {
tvMsg.setText("已封装:\n" + subjects.toString());
}
};
```
* 初始化一个请求数据的对象继承BaseEntity对象,传递一个sub回调对象和context对象,设置请求需要的参数
* 通过单利获取一个httpmanger对象,触发请求
* 结果统一通过BaseEntity中的fun1方法判断,最后返回传递的sub对象中
##思路
详细思路可以可以参看我的博客:[Rxjava+ReTrofit+okHttp深入浅出-终极封装](http://blog.csdn.net/wzgiceman/article/details/51939574)
没有合适的资源?快使用搜索试试~ 我知道了~
温馨提示
1.Retrofit+Rxjava+okhttp基本使用方法 2.统一处理请求数据格式 3.统一的ProgressDialog和回调Subscriber处理 4.取消http请求 5.预处理http请求 6.返回数据的统一判断 7.失败后的retry处理 具体思路参考博客:http://blog.csdn.net/wzgiceman/article/details/51939574
资源推荐
资源详情
资源评论
收起资源包目录
RxjavaRetrofitDemo-master.rar (38个子文件)
RxjavaRetrofitDemo-master
gradlew 5KB
settings.gradle 16B
gradle
wrapper
gradle-wrapper.properties 237B
gradle-wrapper.jar 52KB
README.md 2KB
local.properties 455B
gradlew.bat 2KB
gradle.properties 872B
.gitignore 105B
app
src
main
AndroidManifest.xml 892B
res
mipmap-hdpi
ic_launcher.png 3KB
mipmap-xxxhdpi
ic_launcher.png 10KB
mipmap-xhdpi
ic_launcher.png 5KB
mipmap-mdpi
ic_launcher.png 2KB
layout
activity_main.xml 843B
values-w820dp
dimens.xml 364B
values
colors.xml 214B
strings.xml 84B
styles.xml 394B
dimens.xml 216B
mipmap-xxhdpi
ic_launcher.png 8KB
java
com
example
retrofit
http
HttpManager.java 2KB
HttpService.java 811B
subscribers
ProgressSubscriber.java 4KB
exception
HttpTimeException.java 877B
RetryWhenNetworkException.java 3KB
activity
MainActivity.java 4KB
listener
HttpOnNextListener.java 176B
entity
BaseEntity.java 884B
RetrofitEntity.java 668B
SubjectPost.java 708B
BaseResultEntity.java 707B
Subject.java 720B
app.iml 12KB
.gitignore 8B
build.gradle 1KB
proguard-rules.pro 706B
build.gradle 521B
共 38 条
- 1
资源评论
- 钱2018-06-06还行吧,应该不错的
- xu_13947510742018-04-08不错不错!很好
- 312nicole2016-12-08参考思路,确实写的很棒
wzgiceman
- 粉丝: 743
- 资源: 25
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功