okhttp,retrofit,android-async-http,volley应该选择哪一个
1个回答
展开全部
个人认为okhttp是android平台最好的网络库。
volley是一个简单的异步http库,仅此而已。缺点是不支持同步,这点会限制开发模式;不能post大数据,所以不适合用来上传文件。
android-async-http,与volley一样是异步网络库。但volley是封装的httpUrlConnection,它是封装的httpClient,而android平台不推荐用HttpClient了,所以这个库已经不适合android平台了。
okhttp是高性能的http库,支持同步、异步,而且实现了spdy、http2、websocket协议,api很简洁易用,和volley一样实现了http协议的缓存。picasso就是利用okhttp的缓存机制实现其文件缓存,实现的很优雅,很正确,反例就是UIL(universal image loader),自己做的文件缓存,而且不遵守http缓存机制。
retrofit与picasso一样都是在okhttp基础之上做的封装,项目中可以直接用了。
另外AndroidAsync这个网络库使用了nio的方式实现的。okhttp没有提供nio的方式,不过nio更适合大量连接的情况,对于移动平台有点杀鸡用牛刀的味道。picasso、uil都不支持inbitmap,项目中有用到picasso的富图片应用需要注意这点。
volley是一个简单的异步http库,仅此而已。缺点是不支持同步,这点会限制开发模式;不能post大数据,所以不适合用来上传文件。
android-async-http,与volley一样是异步网络库。但volley是封装的httpUrlConnection,它是封装的httpClient,而android平台不推荐用HttpClient了,所以这个库已经不适合android平台了。
okhttp是高性能的http库,支持同步、异步,而且实现了spdy、http2、websocket协议,api很简洁易用,和volley一样实现了http协议的缓存。picasso就是利用okhttp的缓存机制实现其文件缓存,实现的很优雅,很正确,反例就是UIL(universal image loader),自己做的文件缓存,而且不遵守http缓存机制。
retrofit与picasso一样都是在okhttp基础之上做的封装,项目中可以直接用了。
另外AndroidAsync这个网络库使用了nio的方式实现的。okhttp没有提供nio的方式,不过nio更适合大量连接的情况,对于移动平台有点杀鸡用牛刀的味道。picasso、uil都不支持inbitmap,项目中有用到picasso的富图片应用需要注意这点。
Storm代理
2023-07-25 广告
2023-07-25 广告
StormProxies是全球大数据IP资源服务商,其住宅代理网络由真实的家庭住宅IP组成,可为企业或个人提供满足各种场景的代理产品。点击免费测试(注册即送1G流量)StormProxies有哪些优势?1、IP+端口提取形式,不限带宽,IP...
点击进入详情页
本回答由Storm代理提供
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询