volley是當前Android中比較常用的網(wǎng)絡請求框架。
volley請求如同我們常用的http請求方式一樣同樣包含post和get兩種請求方式鲜戒。
volley的常用請求類型有:
1橙困,StringRequest
2,JsonArrayRequest
3鸟蟹,JsonObjectRequest
以及一個特殊的 請求類型:
1宴抚,ImageRequest
一梢什,使用volley之前需要聲明RequestQueue:
RequestQueue requestQueue=Volley.newRequestQueue(this);
二布轿,調(diào)用構造方法哮笆,有以下幾種構造方式:
new JsonStringRequest(Request.Method.GET,url,new Response.Listener(),newResponse.ErrorListener());
參數(shù):請求方式汰扭,url,請求返回對象稠肘,請求異常監(jiān)聽對象
new JsonObjectRequest(Request.Method.GET,url,jsonobject,newResponse.Listener(),newResponse.ErrorListener() )萝毛;
參數(shù):請求方式项阴,url,請求參數(shù),請求返回對象笆包,請求異常監(jiān)聽對象
并且實現(xiàn)對應的方法:
1环揽,public void onResponse(JSONObject response);
2庵佣,public void onErrorResponse(VolleyError error)歉胶;
三,圖片請求
請求構造方法:
newImageRequest(url,newResponse.Listener() ,300,200, Config.ARGB_8888,newErrorListener())巴粪;
參數(shù)說明:url,返回監(jiān)聽,寬通今,高粥谬,顏色,異常返回辫塌。
實現(xiàn)方法:
publicvoidonResponse(Bitmap?arg0) 帝嗡;//返回圖片
publicvoidonErrorResponse(VolleyError?arg0);//返回異常
四,啟動網(wǎng)絡請求
1璃氢,requst.setTag(str)哟玷;//設置標簽
2,requestQueue.add(requst);//添加到請求隊列中一也。
五巢寡,取消請求
1,取消隊列成員
Request<?> req=new Request();
req.cancel();
2,取消所有隊列成員
requestQueue.cancelAll(this);
3, 終止特定請求
requestQueue.cancelAll(newRequestFilter() {}/newObject());