转自:https://blog.csdn.net/dianziagen/article/details/80306086
HttpClient 在android 6.0 之后只有几个类,不推荐使用
- Volley
Volley 特别适合数据量不大但是通信频繁的场景
优点:
(1)自动调度网络请求;
(2)高并发网络连接;
(3)通过标准的 HTTP cache coherence(高速缓存一致性)缓存磁盘和内存透明的响应;
(4)支持指定请求的优先级( 请求队列的优先级排序);
(5) 提供多样的取消机制:网络请求 cancel 机制,我们可以取消单个请求,或者指定取消请求队列中的一个区域;
(6)框架容易被定制,例如,定制重试或者回退功能;
(7)包含了调试与追踪工具;
(8)默认 Android2.3 及以上基于 HttpURLConnection,2.3 以下使用基于 HttpClient
(9)提供简便的图片加载工具(其实图片的加载才是我们最为看重的功能)
缺点:
(1)不能下载文件:这也是它最致命的地方
- OKHttp
在 Android 6.0 中底层的源码已经使用了 OKHttp
OKHttp 的 github 地址:https://github.com/square/okhttp - retrofit
retrofit 是根据 OKHttp 封装的框架,它的底层网络请求就是使用OKHttp的
优点:
(1)支持 okhttp
(2)注解处理,简化代码
(3)支持上传和下载文件
(4)支持自己更换解析方式
(5)支持多种http请求库