2014-12-07 58 views
0

我正在爲我的android應用程序尋找一個好的HTTP庫。我一直在使用AsyncHTTP loopj(並且我只使用過),但是當網絡連接丟失時它會讓我的應用崩潰。另外,它不能很好地滿足我的要求。到目前爲止,我發現了Square的okhttp和Google的volley。但我不確定哪個更適合我的目的。下面是我的要求,Android的HTTP請求庫

爲JSON
  • 少量多次的http請求導致
  • JSON解析
  • 有回調方法異步操作
  • 緩存,與力的功能再取出

對這些不同以及我應該如何使用的一些見解將非常有幫助。

回答

3

OkHttp是一個HttpClient。如果你想要JSON解析和回調方法,你應該使用Retrofit,它在內部使用OkHttp。 Retrofit和Volley都適合您的要求。 Volley也有一個圖像下載器,但如果你想要圖像下載時使用OkHttp你需要使用Picasso從廣場(我建議)。

我個人建議使用Retrofit + Picasso。它們非常輕巧,表現非常出色,而且它們擁有不錯的文檔。

+0

我一直在我的項目中使用畢加索,它很棒。我會研究'改造'。謝謝。 'Retrofit'還可以緩存請求嗎?我正在避免麻煩來管理本地數據庫。有沒有像HTTP緩存這樣的東西,就像'畢加索'如何緩存圖像? – 2014-12-07 17:47:01

+0

@ShashwatBlack只要我知道你應該處理http的緩存。你可以看看這個https://gist.github.com/swankjesse/5889518 – Nasir 2014-12-07 17:57:55

0

Google Http Client /春/改造(您的choise)是你在找什麼對於。 RoboSpice通過在Activity/Fragment生命週期中使用該網絡庫中的一個來執行異步請求,並處理緩存。 JSON由這些庫分析。

+0

我找了一些關於'Robospice' - 'Retrofit'組合的例子,但是我找不到太多東西。我從github倉庫下載了[示例應用程序](https://github.com/octo-online/RoboSpice-samples/tree/release/robospice-sample-retrofit),但我也不瞭解它,也不能運行它。你能指導我爲初學者學習一些基礎教程,那麼我可以開始嗎? – 2014-12-08 03:46:58

+0

這裏https://github.com/stephanenicolas/robospice/wiki是維基,這裏https://github.com/stephanenicolas/robospice/wiki/Starter-Guide是基本教程。應該幫助。 – viduka 2014-12-08 09:31:56