1.HttpClient: Android3.0之前 系统默认HttpClient来实现网络请求,在内存和请求效率上存在一些诟病,所以3.0之后被弃用了,5.0之后就彻底被从源码中移除了。
2.HttpUrlConnection:最最底层的库,之后Volly、OkHttp的网络底层都是依赖于这个HttpUrlConnection来做的,但是这个库比较基础比较底层,在使用的时候肯定要自己做一些封装,所以我们也是不采用的,使用起来比较复杂
3.Volly Google为了减少HttpUrlConnection的复杂度,为了统一Android这一块的网络请求和网络复杂度和图片加载,但是由于OkHttp/Retrofit的兴起,Volly也没有发展起来
- OkHttp/Retrofit Retrofit是基于OkHttp的二次封装
原因分析:
4.1 功能齐全:基本的网络请求、文件上传、文件下载
4.2 高效的性能:底层是通过线程池来提高请求的复用性
4.3 优秀的代码设计:各种设计模式的应用 构建者模式、拦截器模式、单例模式等等 可扩展性非常好
基于以上分析 最终使用OkHttp/Retrofit
网友评论