首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

RxJava+Retrofit 如何精简封装

开篇 我是在去年的时候开始接触RxJava+Retrofit的,那时候还是RxJava1.x的版本,当时根据需求自己简单封装了一个网络库RxHttpUtils(https://github.com/lygttpod...目录结果.png 介绍 原始RxJava+Retrofit的请求 正式开始之前我们先看看原始的Retrofit是怎么使用 ? ?...以上就是原始RxJava+Retrofit的请求方式,需要先构建出OKHttpClient,在实例化Retrofit最后才是create并且subscribe,中间还有线程切换的配置,大眼一看一个简单的请求写了这么多代码...封装 封装OkHttpClient 封装Retrofit 对线程切换的封装 对Observer封装 封装OkHttpClient 首先是要构建一个OkHttpClient,我们就新建一个类单独出来它...封装Retrofit 构建出Retrofit,我们也单独新建一个文件处理(代码结果和HttpClient 如出一辙) ?

96010

retrofit-helper 简洁的封装retrofit,优雅的取消请求

retrofit-helper Retrofit是很多android开发者都在使用的Http请求库!...他负责网络请求接口的封装,底层实现是OkHttp,它的一个特点是包含了特别多注解,方便简化你的代码量,CallAdapter.Factory 和Converter.Factory可以很灵活的扩展你的请求...我们在使用的时候还是需要封装一层便于我们使用,retrofit-helper的作用就是再次简化你的请求。 1. Retrofit-helper扩展了那些功能 ? 2....封装逻辑解析 2.1 RetrofitFactory全局管理retrofit实例 DEFAULT 静态变量管理默认常用的的retrofit对象,OTHERS 管理其他多个不同配置的retrofit /...) { //确保多线程的情况下retrofit不为空或者被修改了 Retrofit retrofit = DEFAULT; Utils.checkState(retrofit !

2.8K20
您找到你想要的搜索结果了吗?
是的
没有找到

浅谈RxJava+Retrofit+OkHttp 封装使用

背景 之前学习完Retrofit+Rxjava之后写了一篇关于封装的博客,发出后受到大家的关注以及使用,由于不断的完善之前的项目,所以决定把最新的项目封装过程讲解出来,供大家查看!...Retrofit介绍: Retrofit和okHttp师出同门,也是Square的开源库,它是一个类型安全的网络请求库,Retrofit简化了网络请求流程,基于OkHtttp做了封装,解耦的更彻底:比方说通过注解来配置请求参数...官网 http://square.github.io/retrofit/ github https://github.com/square/retrofit 效果 ?...compile 'com.trello:rxlifecycle-components:+' /*rotrofit*/ compile 'com.squareup.retrofit2:retrofit...Override public void onNext(RetrofitEntity retrofitEntity) { tvMsg.setText("无封装

1K20

Android RxJava+Retrofit完美封装(缓存,请求,生命周期管理)

前言 Retrofit 和RxJava已经出来很久了,很多前辈写了很多不错的文章,在此不得不感谢这些前辈无私奉献的开源精神,能让我们站在巨人的肩膀上望得更远。...Retrofit的使用可以 加QQ群:668041364 本文内容是基于Retrofit + RxJava做的一些巧妙的封装。参考了很多文章加入了一些自己的理解,请多指教。...:retrofit:2.0.0-beta4' compile 'com.squareup.retrofit2:converter-gson:2.0.0-beta4' compile 'com.squareup.retrofit2...初始化 Retrofit 新建类Api,此类就是初始化Retrofit,提供一个静态方法初始化Retrofit非常简单....封装服务器请求以及返回数据 用户在使用任何一个网络框架都只关系请求的返回和错误信息,所以对请求的返回和请求要做一个细致的封装

3.1K11

详解RxJava2 Retrofit2 网络框架简洁轻便封装

前言 RxJava2、Retrofit2火了有一段时间了,前段时间给公司的项目引入了这方面相关的技术,在此记录一下相关封装的思路。 需求 封装之前要先明白需要满足哪些需求。...先封装一个网络框架的管理类,方便调用 public class RxHttp { private final String BASE_URL = "https://github.com/"; private...data) { this.data = data; } } fastjson的支持 由于项目中采用了fastjson,square尚未实现对fastjson的支持,但是保留了代码的扩展,这边可以自己封装一下...else { msg = httpException.message(); } return msg; } } 异步请求加入Loading Dialog 这个时候我们可以根据自己项目中统一封装的...context).bindUntilEvent(ActivityEvent.DESTROY)); }else { return observable; } } } 讲了那么多,那么如何使用这个封装

85720

Android基于Retrofit2.0 封装的超好用的RetrofitClient工具类

RetrofitClinent 基于Retrofit2.0和Rxjava封装的RetrofitClient. 避免重复创建Retrofit实列. 调用方便简洁....支持自定义扩展的APIService 统一处理无网络情况,和支持加载进度回调 结合封装RxJava 支持自己定义的缓存机制 使用原生的Retrofit请求网络,熟悉的朋友必定了解,在某个ApiServie...方法多时 Retrofit设置就显得有点累赘,今天给大家带来对Retrofit的基本封装。...这次对Retrofit进阶篇,本次封装已加入RxJava,请在阅读下文前请先了解RXJAVA和本人写的Retrofit系列文章(原文可点击阅读)....总结 本次封装只对retrofit进行了简单封装,很多场景和需求还是存在缺陷,这种单列模式已不符合目前流行的Builder模式,本人后期推出更灵活的Novate 网络框架,喜欢可以可直接gitHub下载集成

3.1K20

Retrofit--合理封装回调能让你的项目高逼格

时怎样去设置OKHttp Retrofit+OKHttp 教你怎么持久化管理Cookie 今天我们讨论的主题是怎么封装回调才能完美的适应自己的需求。...image.png 封装背景: 在开始用Retrofit的时候在网上一搜,搜出来好多教程,而且口碑很好,所以我打算新的项目由原来的Xutils框架转战Retrofit。...Retrofit和Java领域的ORM概念类似, ORM把结构化数据转换为Java对象,而Retrofit 把REST API返回的数据转化为Java对象方便操作。同时还封装了网络代码的调用。...看了一些资料后大致了解到,Retrofit 2.0利用注解的形式将我们访问服务器的URL以及参数封装成了java对象,而OKHttp依旧去执行网络请求。...自定义响应体CallModel 很简单的实现了一个网络请求,当然我在刚开始的时候一直也都是这么使用的,因为Retrofit自己封装了JSON解析的过程,我们只需在建造Retrofit的时候加入addConverterFactory

1.6K10

Retrofit--使用Retrofit时怎样去设置OKHttp

如果你还不知道怎么持久化管理Cookie,请看这篇文章: Retrofit+OKHttp 教你怎么持久化管理Cookie,好了,废话不多说,开始今天的分享: 大家都知道Retrofit是Square公司基于...OkHttp推出的一个高解耦的网络框架,至于为什么又出来一个这个东东,想必可能是觉得使用OKHttp一般都需要自己再包一层吧,当然你也可以不用再自己费劲去封装,因为网上很多大牛前辈已经做了,你可以看鸿洋大神封装的...OKHttp, Android 一个改善的okHttp封装库,只要你能想到的,这里面都有,因为我已经用这个做过一个APP了。...切入正题:我们先看一下Retrofit里面都包括那些东西吧: image.png 我们可以看到Retrofit里面东西非常少,http包里面的注解的东西,剩下的就这几个类和这几个接口,因为...OkHttpCall实现了上面的Call接口,通过这个类直接用OkHttp的request去执行网络请求,实现异步,同步请求,接口回调… ServiceMethod: 这个类主要是用来通过解析注解、传参,将它们封装

66520

Retrofit--使用Retrofit时怎样去设置OKHttp

OkHttp推出的一个高解耦的网络框架,至于为什么又出来一个这个东东,想必可能是觉得使用OKHttp一般都需要自己再包一层吧,当然你也可以不用再自己费劲去封装,因为网上很多大牛前辈已经做了,你可以看鸿洋大神封装的...OKHttp, Android 一个改善的okHttp封装库,只要你能想到的,这里面都有,因为我已经用这个做过一个APP了。...切入正题:我们先看一下Retrofit里面都包括那些东西吧: 我们可以看到Retrofit里面东西非常少,http包里面的注解的东西,剩下的就这几个类和这几个接口,因为Retrofit把网络请求交给了...OkHttpCall实现了上面的Call接口,通过这个类直接用OkHttp的request去执行网络请求,实现异步,同步请求,接口回调… ServiceMethod: 这个类主要是用来通过解析注解、传参,将它们封装成...其它的一些类就不一一介绍了,毕竟这篇文章的主题不是源码解析,如果你想从源码的角度去了解Retrofit,我推荐你可以去看这两篇文章: Retrofit2 完全解析 探索与okhttp之间的关系 Retrofit

62590

Retrofit源码模拟

4个变量也不一定必须要,这时我们想到了builder,可以这样写: New Callexector.builder().setXXX.build(); 定制okhttpclient 本文旨在模拟Retrofit...Square真是喜欢泛型转化,不管RXJAVA还是Retrofit都有泛型转化 到这里你以为结束了吗?...NO,NO,NO,下面才是重点 我们看以上代码,这样自己定义接口动态代理实现的方式也真是挺高端了,但是与retrofit功能相比还有一个地方不同,我们在定义接口的时候直接返回结果了,这样我们假如想要得到...还是差一些,哪里呢,Retrofit的返回类型包装类(我们这里是CallImpler)也是可以转化的哦,那么又是泛型转化!... adapterFactories CallImpler -> Retrofit.Call CallBack -> Retrofit.CallBack

962100
领券