Volley框架的使用

来源:互联网 发布:阿里云人工在线客服 编辑:程序博客网 时间:2024/05/22 03:29

Volley框架作为Android网络访问的框架来说十分的便捷,其具体操作也很简单明了,相信在项目开发中十分有用。

volley

项目地址 https://github.com/smanikandan14/Volley-demo
(1) JSON,图像等的异步下载;
(2) 网络请求的排序(scheduling)
(3) 网络请求的优先级处理
(4) 缓存
(5) 多级别取消请求
(6) 和Activity和生命周期的联动(Activity结束时同时取消所有网络请求)

下面给出一个使用Volley访问网络数据的具体流程(Post请求)

public void pushData(){      //这里的request对象是自定义需要上传的一个封装类        IdReqVO request = new IdReqVO();        request.setGeneralId(generalId);        request.setGeneralIds(generalIds);      //以下即为Volley网路访问的具体步骤      RequestQueue  requestQueue=Volley.newRequestQueue(context);        gson = new Gson();        String params = gson.toJson(request);        JSONObject jsonObject = null;        try {            jsonObject = new JSONObject(params);        } catch (JSONException e1) {            // TODO Auto-generated catch block            e1.printStackTrace();        }        JsonRequest<JSONObject> jsonRequest = new    JsonObjectRequest(Method.POST, needPustUrl, jsonObject, new Response.Listener<JSONObject>() {//请求成功                 @Override                 public void onResponse(JSONObject response) {                           if(response.getInt("code") == 200) {                              ..........                            }                   }, new Response.ErrorListener() {//请求失败                 @Override                 public void onErrorResponse(VolleyError error) {                        Log.e("TAG", error.getMessage(), error);                }         });        //设置tag方便以后的区分         jsonRequest.setTag("abcPost");        //加入队列        requestQueue.add(jsonRequest);    }

注意,Volley框架的网络访问为异步访问,所以相关数据的设置应该在获取到数据的位置进行调用(即上述代码的省略处)

0 0
原创粉丝点击