2

スレッドから HttpURLConnection と HttpClient の両方を使用するように構築された Android アプリの保守を引き継ぎました。共有インスタンスを再利用するのではなく、毎回新しいインスタンスが使用されます (少なくとも HttpClient の場合、これは適切な方法ではないことがわかっており、変更するつもりです)。ほとんどの接続は同じサーバーに対して行われます。一部の接続がビジー状態になると、他のスレッドがブロックされることがわかりました。Android HttpClient のパフォーマンスから、デフォルトでは HttpClient が同じターゲット ホストへの同時接続を 2 つしか許可しないことを理解しています。URLConnection または HTTPClientの回答からもわかります。どちらがより優れた機能と効率を提供しますか? HttpUrlConnection を使用すると、同じホストへの同時接続がシリアル化されます。

HttpClient と HttpUrlConnection の同時接続制限を変更するにはどうすればよいですか? HttpURLConnection と HttpClient は問題なく同じアプリに共存できますか、それともどちらか一方だけを使用した方がよいでしょうか? ありがとう。

4

1 に答える 1

3

Google は、HttpClient が Android で維持されなくなったと述べています。つまり、基本的にはそのまま残る可能性がありますが、強化する予定はありません。彼らは、人々が HttpUrlConnection を使用することを好みます。HttpUrlConnection には、Androind のバージョンによってはいくつかのバグがあります :( (両方の選択肢について詳しくは、Android 開発者ブログhttp://android-developers.blogspot.ca/2011/09/androids-を参照してください)。 http-clients.html )

個人的には、OkHttp (by Square) を見てみたいと思います。なぜなら、これは HttpUrlConnection のほぼ完全な代替品を提供しますが、接続プーリングと SPDY サポートを提供するからです。

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

于 2013-06-05T18:22:53.550 に答える