Volley網路請求概述

2021-07-28 02:52:38 字數 2299 閱讀 5152

· 自動排程網路請求

· 支援併發網路連線(即支援多執行緒)

· 支援標準的http快取協議(由伺服器來決定是否快取資料)

· 支援請求優先順序設定(4級)

· 支援取消單個或多個請求

· 易於定製(重試),擴充套件性強。比如retry&backoff機制

· 強大的網路請求能力讓你輕鬆的傳送非同步請求來填充ui資料

· 提供除錯和跟蹤工具

擅長將rpc(遠端過程呼叫協議,c/s模式)型別的操作,用來展示伺服器資料

。比如以某種資料格式獲取一頁搜尋結果。支援任意的資料傳輸格式,比如,字串,json,你也可以定義自己的資料格式。其實就是自定義request。volley讓你不再寫這些重複的模板**(網路請求邏輯,不再重複造輪子),這樣你就可以專注於你應用本身的業務邏輯.

由於volley都是在記憶體中解析和處理資料

1. 直接把**clone下來,把volley的**直接copy到你的project裡,

2. 作為乙個library專案存在或者jar包存在

3. 新增網路許可權

1. 初始化乙個

requestqueue

mrequestqueue = volley.newrequestqueue(this);

2. 構建乙個

request

,這個demo

裡我們使用的是

stringrequest

stringrequest request = new stringrequest(

要訪問的url,

new response.listener() ,    //請求結果正確返回的

listener

0,         //壓縮比,不想壓縮就傳0

0,         //壓縮比,不想壓縮就傳0

null,     //伸縮,

null

不做任何處理

bitmap.config.rgb_565,     //想讓顯示的質量,

rgb_565

、argb_8888

、argb_4444

new response.errorlistener() {});        //請求結果錯誤返回的

listener

(3)jsonobjectrequest

jsonobjectrequest request = new jsonobjectrequest(

要請求的

url, 

params,        //要向伺服器傳入的引數

new response.listener() {},      //請求結果正確返回的

listener

new response.errorlistener() {});         //請求結果錯誤返回的

listener

(4)imageloader

:不使用記憶體快取,則給乙個預設的

imagecache

,不重寫裡面的方法

mimageloader = new imageloader(

mrequestqueue,         //請求佇列

new imageloader.imagecache() );    //imageloader

的快取在普通快取前執行 使用

imageloader載入

mimageloader.get(

imageloader.getimagelistener(

miv,        //顯示到哪

r.mipmap.ic_launcher,     //預設顯示的資源id

r.mipmap.ic_launcher)    //請求失敗顯示的

(5)networkimageview

在布局檔案中:

android:id="@+id/niv"

android:layout_width="wrap_content"

android:layout_height="wrap_content"

android:layout_centerinparent="true" />

在**中(前兩步跟imageloader一樣,最後一步如下):

mniv.setimageurl(url, mimageloader);

自定義request需要實現兩步:

1. 繼承request,其中t表示轉換成的response的型別

2. 實現抽象方法 parsenetworkresponse()

和deliverresponse()

網路請求Volley篇 Android

volley相關api 1.requestqueue 請求佇列,會自動執行佇列中的請求 volley.newrequestqueue context 建立乙個請求佇列 addrequest request request 將請求新增到請求佇列 2.request 代表請求的介面 stringrequ...

Volley網路請求資料框架

volley網路請求框架 首先我們要先來解釋一下volley這個東西是什麼?它要具體幹什麼?它的優勢及劣勢是什麼?我們一點點來吧。我們先來說一下這個是什麼?根據官方說明 它是2013年google i o上發布的一款網路框架 基於android 平台,能夠使網路通訊更快更簡單更健全等等 說白了就是乙...

Fetch概述 公升級的網路請求

xmlhttprequest的問題 所有的功能全部集中在同乙個物件上,容易書寫出混亂不易維護的 採用傳統的事件驅動模式,無法適配新的 promise api fetch api 的特點 並非取代 ajax,而是對 ajax 傳統 api 的改進 精細的功能分割 頭部資訊 請求資訊 響應資訊等均分布到...