使用 Volley 傳輸網(wǎng)絡(luò)數(shù)據(jù)
Volley 是一個 HTTP library,能夠使 Android apps 的網(wǎng)絡(luò)數(shù)據(jù)傳輸更加容易诗芜,更重要的是,快捷伏恐。可以從開源的?AOSP?倉庫獲取 Volley
Volley 提供了以下好處:
自動計劃網(wǎng)絡(luò)請求
多并發(fā)網(wǎng)絡(luò)連接
遵循標(biāo)準(zhǔn)的 HTTP?cache coherence?來響應(yīng)磁盤和內(nèi)存緩存
支持請求優(yōu)先級
請求取消 API横蜒,你可以取消單一的請求销凑,或者你可以取消一塊區(qū)域或者一整個范圍內(nèi)的請求
簡便的自定義丛晌,例如斗幼,請求的重試和后退
強有序特性使得異步從網(wǎng)絡(luò)獲取數(shù)據(jù)并正確填充到你的 UI 變得更加簡單
Debug 和跟蹤工具
Volley 擅長使用 RPC-type(遠(yuǎn)程過程調(diào)用類型) 操作來填充 UI,例如將一個搜索結(jié)果頁轉(zhuǎn)化為一個結(jié)構(gòu)化數(shù)據(jù)谋逻。它能夠輕松集成任何協(xié)議,突破傳統(tǒng)并且支持原始的 strings毁兆,image 和 JSON阴挣。通過提供你需要的內(nèi)建特性支持荧恍,Volley 可以讓你免于書寫樣板代碼并且使你集中注意力在你的 App 中特定的程序邏輯上屯吊。
Volley 不適合大量的下載和流操作摹菠,因為 Volley 在內(nèi)存中持有所有的待解析的響應(yīng)。如果需要大量的下載操作次氨,應(yīng)該考慮使用可選的例如DownloadManager。
Volley 核心庫的開發(fā)是在 openAOSP倉庫的frameworks/volley虹蓄,其包含了主要的請求分發(fā)管道和一些位于 Volley “toolbox”中的常規(guī)的應(yīng)用工具犀呼,將 Volley 添加到你的工程的最簡單的方式是 clone Volley 倉庫到你的工程并且將它設(shè)為一個 library project:
通過輸入以下 Git 命令來 clone 該倉庫:
git clone https://android.googlesource.com/platform/frameworks/volley
下載 Volley 源碼并且將它作為 module 導(dǎo)入到你的 App 工程中薇组,查看這里的方法Create an Android Library.
課程
學(xué)習(xí)使用 Volley 默認(rèn)的行為來發(fā)送一個簡單的請求,一級如何取消一個請求
學(xué)習(xí)如何配置一個RequestQuenue宋光,如何通過實現(xiàn)一個 singleton pattern(單例模式) 來創(chuàng)建一個持續(xù)整個 App 生命周期的RequestQuenue
學(xué)習(xí)如何使用 Volley 其中一個突破傳統(tǒng)的請求類型來發(fā)送一個請求(原始的 strings炭菌,images 和 JSON)
學(xué)習(xí)如何實現(xiàn)一個自定義請求