[Android] Okhttp : 高效能 HTTP 客戶端

Okhttp 是一個 Java 的 HTTP 客戶端函式庫,這個函式庫經常被 GitHub 的眾多開源 Android 應用程式使用。另一個常用的 HTTP 客戶端函式庫是 Volley,若回應的資料量很大,Volley 會有效能上的問題,此時建議改用 Okhttp。

首先在專案中引入 Okhttp 函式庫
compile 'com.squareup.okhttp:okhttp:2.5.0'

底下是一個簡單的 HTTP 請求範例,可是這樣寫,執行起來會出錯,因為 Okhttp 不會把結果丟回主執行緒。
這裡要改用 Callback 的方式(第7行),取得 HTTP 回應。然後從 onResponse 方法取得回應的字串(第20行)。Okhttp 的 Callback 是在背景執行緒執行,不像 Volley 一樣會主動丟回主執行緒。所以在23~28行使用 runOnUiThread,把 HTTP 回應的結果丟回給主執行緒,並呈現在畫面上。


相關文章

如何將電腦畫面經由 Chromecast 投放到電視螢幕上

Chrome 的檔案續傳功能

Mac與Android裝置傳輸檔案的方法

使用 Vysor 在電腦上控制 Android 裝置