RxHttp.get("http://www...")//这里get,代表Get请求.fromDataParser(Student.class)//此方法是通过注解生成的.as(RxLife.asOnMain(this)).subscribe(student->{//这里的student,即Data里面的data字段内容},throwable->{//Http请求出现异常String msg=throwable.getMessage();//Data里面的msg字段或者其他异常信...
implementation'com.rxjava.rxhttp:rxhttp:1.0.1'//注解处理器,生成RxHttp类,即可一条链发送请求annotationProcessor'com.rxjava.rxhttp:rxhttp-compiler:1.0.1'//管理RxJava及生命周期,Activity/Fragment 销毁,自动关闭未完成的请求implementation'com.rxjava.rxlife:rxlife:1.0.4' RxHttp 源码RxLife 源码 初始化 代...
RxJava是一个实现了观察者模式的库,用于在Java中编写异步和基于事件的程序。它允许你使用可观察的序列来编写异步和基于回调的代码,而序列的组成、错误处理、取消和组合等操作都可以通过声明式的方式来实现。 RxHttp简介 RxHttp是一个基于OkHttp封装的响应式网络请求库,它完美融合了RxJava的响应式编程模型,使得网络请求...
https://github.com/kongpf8848/RxHttp 亮点 代码量极少,类库大小不足100kb,但足以胜任大部分APP的网络请求任务,浓缩的都是精华啊_^_ 完美兼容MVVM,MVC架构,兼容Kotlin和Java,Kotlin+MVVM+RxHttp组合使用更酸爽,MVVM官方推荐,抱紧Google大腿就对了 完美解决泛型类型擦除的棘手问题,还原泛型的真实类型 天生支持网络请...
rxhttp同样使用了观察者模式。 数据模型 首无,我们需要定义一个数据模型用于存储访问url的返回数据: class ApiModel { var code = 0 var msg: String? = null var obj: User? = null } 观察者 创建数据模型的观察者类。 这个观察者继承于io.reactivex.rxjava3.observers.ResourceObserver,所以需要override三个...
首先,我们需要在项目的build.gradle文件中导入RxHttp的依赖: dependencies{implementation'com.luck.picture.lib:picture_library:v3.0.5'} 1. 2. 3. 2. 获取图片的base64编码 在上传图片之前,我们需要先将图片转换成base64编码的字符串。这可以通过以下代码实现: ...
RxHttp相较于retrofit,功能上,两者均能实现,并无多大差异,更多的差异体现功能的使用上,也就是易用性,如对文件上传/下载/进度监听的操作上,RxHttp用及简的API,可以说碾压retrofit;另外在baseUrl、公共参数/请求头、请求加解密等功能上的易用性都要优于retrofit;然而这些,个人觉得都不算什么,个人觉得RxHttp最大的优...
RxHttp类没有自动生成,报红检查步骤 RxHttp RxHttp是基于OkHttp的二次封装,并于RxJava做到无缝衔接,一条链就能发送任意请求,主要优势如下 : 1. 支持Json、DOM等任意数据解析方式,可自定义数据解析器 2. 支持Get、Post、Put、Delete等任意请求方式,可自定义请求方式 3. 支持在Activity/Fragment/View/ViewModel/任意...
随着Android 11的正式发布,适配Android 10/11 分区存储就更加的迫切了,因为Android 11开始,将强制开启分区存储,我们就无法再以绝对路径的方式去读写非沙盒目录下的文件,为此,RxHttp在2.4.0版本中就正式适配了分区存储,并且,可以非常优雅的实现文件上传/下载/进度监听,三步即可搞懂任意请求。
rxHttp.get(".subscribeOn(Schedulers.io())// 指定在IO线程执行网络请求 1. 2. 指定回调线程 最后,我们可以使用RxJava的操作符.observeOn()来指定回调线程: rxHttp.get(".subscribeOn(Schedulers.io())// 指定在IO线程执行网络请求.observeOn(AndroidSchedulers.mainThread())// 指定回调在主线程.subscribe(new...