Android OKHttp的高度封装

连网框架有很多,那你可能问,为什么不用其他的联网开源框架呢?
xutils、okHttp、volley、android-async-http对比:
从xutils 2.1.5版本到的xutils 3.0,使用起来也是蛮方便的,但Xutils里面包含的东西相对来说比较杂,有数据库、图片缓存、注解、网络请求等等。但个人感觉太过复杂,有时我们只用到了一部分功能且多余的类,在编译时,也会参与编译。
volley是一个简单的异步http库,仅此而已。缺点是不支持同步,这点会限制开发模式;不能post大数据,所以不适合用来上传文件
android-async-http。与volley一样是异步网络库,但volley是封装的httpUrlConnection,它是封装的httpClient,而android平台不推荐用HttpClient了,所以这个库已经不适合android平台了。
okhttp是高性能的http库,支持同步、异步,而且实现了spdy、http2、websocket协议,api很简洁易用,和volley一样实现了http协议的缓存。

下面让我们先来看看,封装后是怎么使用的:

这里写图片描述

其实就是这么简单。
若是要自己设置缓存路径请看下面这段代码:

      OkHttpClient.Builder builder = new OkHttpClient().newBuilder()
            .connectTimeout(10, TimeUnit.SECONDS)//设置超时时间
            .readTimeout(10, TimeUnit.SECONDS)//设置读取超时时间
            .writeTimeout(10, TimeUnit.SECONDS);//设置写入超时时间
    int cacheSize = 10 * 1024 * 1024; // 10 MiB
    Cache cache = new Cache(App.getContext().getCacheDir(), cacheSize);
    builder.cache(cache);
    builder.addInterceptor(interceptor);
    mOkHttpClient = builder.build();

下面是一个小Demo链接地址(因为代码注释写的相当详细,我这里就不依次讲了):
http://download.csdn.net/detail/jimtrency/9677428

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值