Android OKHttp的高度封裝

2021-07-24 11:34:26 字數 1131 閱讀 7845

連網框架有很多,那你可能問,為什麼不用其他的聯網開源框架呢?

xutils、okhttp、volley、android-async-http對比:

從xutils 2.1.5版本到的xutils 3.0,使用起來也是蠻方便的,但xutils裡面包含的東西相對來說比較雜,有資料庫、快取、註解、網路請求等等。但個人感覺太過複雜,有時我們只用到了一部分功能且多餘的類,在編譯時,也會參與編譯。

volley是乙個簡單的非同步http庫,僅此而已。缺點是不支援同步,這點會限制開發模式;不能post大資料,所以不適合用來上傳檔案

android-async-http。與volley一樣是非同步網路庫,但volley是封裝的httpurlconnection,它是封裝的httpclient,而android平台不推薦用httpclient了,所以這個庫已經不適合android平台了。

okhttp是高效能的http庫,支援同步、非同步,而且實現了spdy、http2、websocket協議,api很簡潔易用,和volley一樣實現了http協議的快取。

下面讓我們先來看看,封裝後是怎麼使用的:

其實就是這麼簡單。

若是要自己設定快取路徑請看下面這段**:

.connecttimeout(10, timeunit.seconds)//設定超時時間

.readtimeout(10, timeunit.seconds)//設定讀取超時時間

.writetimeout(10, timeunit.seconds);//設定寫入超時時間

下面是乙個小demo鏈結位址(因為**注釋寫的相當詳細,我這裡就不依次講了):

Android OkHttp的基本使用

對於android studio的使用者,可以在gradle上新增 com.squareup.okhttp3 okhttp 3.2.0 一 http get 對了網路載入庫,那麼最常見的肯定就是http get請求了,比如獲取乙個網頁的內容。建立okhttpclient物件 建立乙個request ...

Android OkHttp之post請求方法

android okhttp之post請求方法 簡要 專案中要使用okhttp網路框架,在build.gradle 中的dependencies 匯入okhttp的依賴 dependencies在androidmanifest.xml中新增網路請求許可權 說明一下,okhttp的使用原理在這就不多說...

android OKhttp 引數 傳遞陣列型別

android開發之okhttp上傳byte陣列 文章1 閱讀量3.6k,發布日期2018.10.24 使用httppost傳送 位元組流請求 byte 文章2 閱讀量5.6k,發布日期2019.1.2 有關使用http協議傳輸二進位制檔案 閱讀量1.1w,發布日期2015.7.21 android...