2012-09-02 25 views
0

我正在構建一個Android應用程序,該應用程序將使用HTTPHTTPSREST服務進行通信,以便下載JSON和文件數據。我正在尋找一個HTTP網絡庫來使用和評估選項。我發現了一個名爲AsyncHttpClientloopj.com/android-async-http)的看起來不錯,我看到Instagram使用它,但我看到它建立在Apache HttpClient庫上,我似乎回憶起在某處讀到的Apache庫被拋在後面而贊成HttpURLConnection。這是我應該關心的嗎?我應該考慮另外一個圖書館嗎?我計劃瞄準2.1的最低Android SDK,如果這有所作爲。Android - 選擇HTTP Java庫

回答

5

您對HttpUrlConnection的建議是正確的,但是,您可以檢查它的初始來源並檢查此建議的根本原因,它是否真的適用於您? http://android-developers.blogspot.com/2011/09/androids-http-clients.html

對我來說HttpUrlConnection的主要限制是它最初不支持Multipart。當然,添加並不難,但看起來很奇怪。

此外,Apache的實現基本上是相當不錯的,只是一個建議 - 不要忘記使用AndroidHttpClient而不是Default之一。

關於JSON - 我會爲此推薦單獨的庫,最有可能的是 - 谷歌的GSON http://code.google.com/p/google-gson/。 對我來說AndroidHttpClient + Gson工作得很好。

好運

+0

你的建議非常感謝。 –

2

我剛發佈了一款名爲DroidNetworking庫,支持HTTP緩存,認證,HTTP和HTTPS等多項功能。

https://github.com/sogeti/DroidNetworking

BR 馬丁

+0

我已經採取了鳥瞰圖,它似乎比loopj的庫更簡單(開發人員界面)和更強大(額外的功能)。謝謝。 – caligari

4

看看http://loopj.com/android-async-http/

概述說:異步基於回調的HTTP客戶端Android版建立在Apache的HttpClient的庫頂。所有請求都在應用程序的主UI線程之外進行,但任何回調邏輯都將在與使用Android的Handler消息傳遞創建的回調相同的線程上執行。

該庫使用流行的應用程序,如Instagram的,Pinterest的,Heyzap等