Android基于Retrofit2.0 +RxJava 封装的超好用的RetrofitClient工具类(六)

本文介绍了基于Retrofit2.0和RxJava封装的RetrofitClient工具类,旨在简化网络请求,支持RxJava、缓存、错误处理和Cookie同步。通过构建基础拦截器、Cookie管理器以及单例RetrofitClient,实现动态配置请求参数,支持文件上传下载。同时,展示了如何优化API服务调用,并预告了后续的框架升级。
摘要由CSDN通过智能技术生成

csdn :码小白
原文地址:
http://blog.csdn.net/sk719887916/article/details/51958010


这里写图片描述


RetrofitClient

基于Retrofit2.0封装的RetrofitClient. 已加入RxJava1, Rxjav2请看 - RxJava2和Retrofit封装的RetrofitClient2终于来了!一文。

  • 避免重复创建Retrofit实列.
  • 调用方便简洁.
  • 无需重复设置属性的步骤.
  • 可固定配置 Host 也可动态配置Url、请求头、参数等.
  • 支持文件下载和上传.
  • 可支持泛型扩展的ApiService
  • 支持RxJava
  • 支持缓存机制
  • 支持统一错误结果处理

使用原生的Retrofit请求网络,熟悉的朋友必定了解,在某个ApiServie方法多时 Retrofit设置就显得有点累赘,今天给大家带来对Retrofit的基本封装。这次对Retrofit进阶篇,本次封装已加入RxJava,请在阅读下文前请先了解RXJAVA和本人写的Retrofit系列文章,


友情导读:


基本步骤:

构建Retrofit的接口service.

构建基础拦截器 Interceptor.

构建Cookie管理工具CookieManger.

构建 单列RetrofitClient客户端.

RetrofitClient的使用.

ApiService

请求网络的API接口类,这里你可以增加你需要的请求接口,也可复用已经实现的几个方法。

/**
 * Created by Tamic on 2016-07-08.
 */
 public interface ApiService {

  public static final String Base_URL = "http://ip.taobao.com/";
  /**
  *普通写法
  */
 @GET("service/getIpInfo.php/")
 Observable<ResponseBody> getData(@Query("ip") String ip);

 @GET("{url}")
 Observable<ResponseBody> executeGet(
        @Path("url") String url, 
        @QueryMap Map<String, String> maps);

评论 31
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值