OkHttpUtils是一款封装了okhttp的网络框架,支持大文件上传下载,上传进度回调,下载进度回调,表单上传(多文件和多参数一起上传),链式调用,整合Gson,自动解析返回对象,支持Https和自签名证书,支持cookie自动管理,扩展了统一的上传管理和下载管理功能。
演示:
目前支持:
一般的get,post,put,delete,head,patch请求
基于post,put,patch的文件上传
多文件和多参数的表单上传
大文件下载和下载进度回调
大文件上传和上传进度回调
支持session的保持
支持链式调用
支持自签名网站https的访问,提供方法设置下证书就行
支持根据Tag取消请求
支持自定义泛型Callback,自动根据泛型返回对象
拓展功能:
默认使用的是 get 请求,同时下载数量为3个,支持断点下载,断点信息使用ORMLite数据库框架保存,默认下载路径/storage/emulated/0/download,下载路径和下载数量都可以在代码中配置,下载管理使用了服务提高线程优先级,避免后台下载时被系统回收
/storage/emulated/0/download
默认使用的是 post 请求,对于需要修改为 put 请求的,只需要修改library_okhttpserver中的UploadTask第67行代码:
library_okhttpserver
UploadTask
PostRequest postRequest = OkHttpUtils.post(mUploadInfo.getUrl());
修改为
PostRequest postRequest = OkHttpUtils.put(mUploadInfo.getUrl());
该上传管理为简单管理,不支持断点续传和分片上传,只是简单的将所有上传任务使用线程池进行了统一管理,默认同时上传数量为1个