Android HttpURLConnection,HttpClient共存和连接限制

时间:2013-06-05 17:12:31

标签: android http

我已经接管了维护一个Android应用程序,该应用程序是为了从线程中使用HttpURLConnection和HttpClient而构建的。每次都使用一个新实例,而不是重用一个共享实例(我知道这不是一个好习惯,至少对于HttpClient而言,我打算改变它)。大多数连接都是在同一台服务器上进行的;我发现当某些连接忙时,其他线程被阻塞。 我从Android HttpClient performance了解到,默认情况下,HttpClient只允许两个并发连接到同一个目标主机。 我还从URLConnection or HTTPClient : Which offers better functionality and more efficiency?的答案中看到,HttpUrlConnection与同一主机的并发连接被序列化。

如何更改HttpClient和HttpUrlConnection的并发连接限制? HttpURLConnection和HttpClient可以在同一个应用程序中共存,没有问题,或者只使用其中一个更好? 感谢。

1 个答案:

答案 0 :(得分:3)

谷歌已经表示,不再在Android中维护HttpClient,这基本上意味着它可能会坚持下去,但它们不会增强它。他们更喜欢人们使用HttpUrlConnection,HttpUrlConnection有一些错误,具体取决于Androind的版本:((你可以在Android开发者博客http://android-developers.blogspot.ca/2011/09/androids-http-clients.html上阅读更多关于这两个选项的内容)

就个人而言,我会看看OkHttp(由Square),因为它几乎可以替代HttpUrlConnection,但它提供了连接池和SPDY支持。

http://square.github.io/okhttp/