在Paresh Mayani在SpeakerDeck上的演示中(https://speakerdeck.com/pareshmayani/lazy-android-developers-be-productive),他提到使用OkHttp
或Retrofit
比使用AsyncTask
和DefaultHttpClient
更好。
我的问题是为什么?
它们为什么更快?
这些库不也是基于默认的Android类构建的吗?
OkHttp和Retrofit之间有什么区别?
在Paresh Mayani在SpeakerDeck上的演示中(https://speakerdeck.com/pareshmayani/lazy-android-developers-be-productive),他提到使用OkHttp
或Retrofit
比使用AsyncTask
和DefaultHttpClient
更好。
我的问题是为什么?
它们为什么更快?
这些库不也是基于默认的Android类构建的吗?
OkHttp和Retrofit之间有什么区别?
一如既往,工程学是关于在需求之间权衡平衡以构建最佳解决方案的。
使用库而不是平台是一个很好的例子。该平台的API已经存在了相当长的时间,出于兼容性原因,Android团队在更改这些接口方面的灵活性较小。库没有这些限制;例如,如果主机支持,OkHttp可以使用SPDY协议以实现更低的延迟、压缩、多路复用等功能,从而使您的Android应用程序更加响应。
OkHttp和Retrofit是由Square开发的项目,它们可以一起工作。它们也是常规的Java库,因此它们不依赖于/基于Android。OkHttp处理更低级别的HTTP连接细节,而Retrofit简化了使用REST API。Retrofit可以在OkHttp之上使用,但不是必需的。
请查看这些项目网站,它们也托管在github上。