1、Android-Async-Http
Android异步网络请求:底层httpClient,Android5.0后被Google弃用,所以不推荐使用。
特点:1、Callback使用了Android消息机制handler在创建它的线程中执行回调。
2、智能重试失败的网络请求。
3、持久化cookie储存。使用sharePreference。
2、Volley
基于HttpUrlConnection的网络请求,轻量级网络请求。
1、内部封装图片加载框架,可以进行加载图片。
2、可以对网络请求进行优先级排序
3、生命周期可以与activity绑定。
4、可扩展性强,可以支持httpclient,httpurlconnection、okhttp
5、不支持大数据的网络耗时操作,volley把request和response数据都封装在byte[]中,不支持输入输出流,大数据传输耗费内存严重。
3、Okhttp
高性能http请求库。
1、支持http2.0、websocket,同步异步网络请求。
2、封装了线程池,数据转换,参数使用,错误处理等。
3、支持GIZP减少数据流量,缓存响应数据。
4、基于NIO和OKIO,性能好,传输数据更快
5、Api调用方式,代码简洁
6、支持重量级网络求情:音视频传输等
4、Retrofit
基于Okhttp高度封装。
1、通过注解配置请求,提供对RxJava支持。
2、可以搭配多种COnverter转换器对响应数据进行解析
3、新能最好,处理速度最快。但由于高度封装,扩展性差。例如:要求服务器必须统一给出api形式,否则将很难进行处理
4、代码简洁易用,RetrofitApi设计风格。
网友评论