9
votes

Défaulttpclient ou httpurlConnection sur Android

Dans le service Web du bâtiment conçu pour interagir avec des appareils mobiles, je ne suis pas sûr de la meilleure approche pour la mise en œuvre des demandes HTTP sur Android.

Je suis tombé sur ce post, qui finit en déclarant httpurlconnection est la méthode préférée de la fabrication de demandes HTTP, et j'ai eu du succès à l'aide du httpsurlconnection . .

Lors de la recherche de réponses ou de la lecture d'autres échantillons de code (même des postes assez récents), tous semblent utiliser défaulthttpclient , ce qui semble aller contre le mot officiel de Google.

J'essaie d'une preuve future mon application Android autant que possible. Avec cela à l'esprit, est le httpurlconnection le meilleur choix?


0 commentaires

3 Réponses :


3
votes

défaulthttpclient est à un niveau d'abstraction plus élevé que httpurlconnection . Soit il convient d'aller bien en fonction de vos besoins. Si vous n'avez pas besoin du contrôle de httpurlconnection , collez-le avec le défaulthttpclient .


0 commentaires

7
votes

Cela compte vraiment quelle version d'Android que vous utilisez. Jetez un coup d'œil à http://android-developers.blogspot.com/2011/09/ androids-http-clients.html pour certaines directives de Google.


0 commentaires

13
votes

Si vous prenez également en charge 2.2 aussi bien , la meilleure approche peut être d'utiliser à la fois de défaulttpclient ou httpurlConnection xxx

raison: httpurlconnection est plus stable après Froyo tandis que la défaulttpclient est plus stable. Moins de buggy dans Froyo et une version moindre.

ref: http://developer.android.com /reference/org/apache/http/impl/client/defaulthttpclient.html Android comprend deux clients HTTP: httpurlConnection et client HTTP Apache. Support HTTPS, Streaming Uploads et Téléchargements, Temps d'accueil configurés, Pooling IPv6 et Connexion. Apache HTTP Client a moins de bugs dans Android 2.2 (Froyo) et des versions antérieures. Pour Android 2.3 (pain d'épice) et plus tard, httpurlconnection est le meilleur choix. Son API simple et sa petite taille le rendent très apte à Android. La mise en cache de compression transparente et de réponse Réduisez l'utilisation du réseau, améliorez la vitesse et économisez la batterie. Voir le blog des développeurs Android pour une comparaison des deux clients HTTP.


0 commentaires