前天写了一篇OkHttp封装,可以发送get请求、post请求、上传文件、下载文件。这个封装库也是我们公司的项目现在正在用的。
使用
1.依赖
如果是android studio开发支持在线依赖:
如果是eclipse那你先把ide切换到android studio吧。。。不闲麻烦的话也可以把源码module的源码copy出来,反正也就几个类。
2.初始化HTTPCaller类
初始化的工作可以放Application,新建MyApplication类继承Application。初始化的时候通过HttpConfig设置一些参数,也可以添加公共参数。
因为自定义Application,需要给AndroidManifest.xml文件application标签中的android:name属性赋值,指定自己重写的MyApplication。
发送get请求
发送get请求就一行代码。
请求回调
http请求回调接口,无论成功或者失败都会回调。因为是测试所以都用在这个接口来回调,在真实的企业开发中,不同的请求用不同的回调。
发送post请求
post请求参数不是跟在url后面的,所以需要把请求参数放到集合里面。因为登录接口也是返回的用户信息,所以可以跟get请求用同一回调。
上传文件
1.上传文件不带回调进度
2.上传文件回调上传进度
上传文件跟其他表单参数不一样的地方就是new NameValuePair对象的时候需要传入三个参数,最后一个参数需要设置成true。
上传文件(传入byte数组)
上传文件(传入byte数组)&&回调上传进度
下载文件&&回调下载进度
修改公共参数
源码下载:
https://github.com/ansen666/OkHttpEncapsulation
关于这几个测试接口的服务器
无论是get请求还是post请求都用到了服务器,所以我自己用java web写了几个接口。部署到了外网上。开发工具是:IntelliJ Idea 部署应用服务器是:tomcat7.0。
接口web服务器源码:
https://github.com/ansen666/OkHttpTest
Android开发666
领取专属 10元无门槛券
私享最新 技术干货