Android下網路請求的兩個封裝類

2021-06-27 17:16:25 字數 1617 閱讀 8629

我們在activity和fragment中做網路請求的時候,往往用到執行緒和handler訊息處理機制等做處理。這裡,我們將網路請求,乙個get和乙個post請求,使用執行緒封裝一下。這樣就剝離開了activity中的**量,將複雜的**,封裝在不同的類中,實現乙個類的單一原則。

/**

* get提交的網路請求

* * 傳遞過來主ui執行緒的訊息處理器,經過執行緒處理之後,返回乙個訊息給主ui執行緒

* 在返回的msg資訊中,what封裝了返回的狀態碼資訊

* 1001代表成功,404代表客戶端請求錯誤,100代表io處理錯誤

* * obj資訊封裝了請求的結果,返回值為string型別

// 給主ui傳送訊息傳遞資料

handler.sendmessage(msg);

}}

/**

* post提交的網路請求

* * 傳遞過來主ui執行緒的訊息處理器,經過執行緒處理之後,返回乙個訊息給主ui執行緒

* 在返回的msg資訊中,what封裝了返回的狀態碼資訊

* 1001代表成功,404代表客戶端請求錯誤,100代表io處理錯誤

* * obj資訊封裝了請求的結果,返回值為string型別

// 給主ui傳送訊息傳遞資料

handler.sendmessage(msg);

}}

看到上面的引數資訊,我們大致知道需要一些怎樣的引數,這裡簡單介紹如何使用這兩個封裝類:

給出乙個get請求的例項:

handler的處理機制:

private handler handler = new handler() 

} };

在使用上面的網路請求封裝類的時候,要注意兩個問題:

第一、我們使用的網路請求中,需要傳遞當前的handler處理物件,用於接收我們的訊息處理返回資訊;內部的網路請求,get和post請求,這裡不再贅述;

第二、我們使用的這個框架中,沒有使用到cookie處理機制,那麼當我們做需要登入的請求的時候,需要使用cookie處理。

android實現兩個listview的同步滾動

在開發的過程中看到專案有實現兩個listview同步滾動的效果,所以就希望跟大家分享一下!不用說大家可能也想到在listview的onscrolllistener中做一些操作,現在具體的細節如下 public void setlistviewontouchandscrolllistener fina...

eclipse啟動兩個android模擬器

廢話不多說直接上圖 首先在andriod virtual device manager中新建兩個虛擬裝置vphone和vphone double 準備兩個andriod程式,執行其中乙個程式,系統會自動啟動乙個虛擬裝置,當執行第二個andriod程式時會彈出andriod device choose...

android 兩個專案的合併

1 一種方法是將其中乙個專案 含有res資源 打包成jar包,另乙個專案來引用。但是多次嘗試總是發現找不到資源 2 第二種方法參考 將其中乙個專案設定為引用的庫,在另乙個專案中新增這個庫引用。簡單點的做法是 在被引用專案a中的project properties 中新增一行 android.libr...