傻啦吧唧的程序员丶

使用Volley执行网络数据传输

首先需要实例化一个RequestQueue

RequestQueue queue = Volley.newRequestQueue(this);

然后是根据提供的URL请求字符串响应

String url ="http://www.google.com";

// 从提供的URL请求字符串响应.
StringRequest stringRequest = new StringRequest(Request.Method.GET, url,
            new Response.Listener() {
    @Override
    public void onResponse(String response) {
        // 在这里做相应的操作,处理URL返回的一些东西.
        mTextView.setText("Response is: "+ response.substring(0,500));
    }
}, new Response.ErrorListener() {
    @Override
    public void onErrorResponse(VolleyError error) {
     // 在这里相应网络链接错误等等。 mTextView.setText(
"That didn't work!"); } }); // 添加到一个请求队列 queue.add(stringRequest);

如果要取消一个请求或者多个请求,可以给每个请求设置一个tag ,到时候根据tag来取消相应的请求。

    //定义一个tag,设置在被指定的请求里
    public static final String TAG = "MyTag";

然后在添加到请求队列之前将tag设置到stringRequest中

        //为stringRequest设置一个tag
        stringRequest.setTag(TAG);

最后在哪里取消呢?

我们可以在activity中的onStop中取消相应的请求

    protected void onStop() {
        super.onStop();
        if (queue != null){
            //根据设置的tag来取消队列里的请求
            queue.cancelAll(TAG);
        }
    }

一个简单的请求队列和取消就完成了。

对了,还必须得添加网络权限

<uses-permission android:name="android.permission.INTERNET"/>

 

posted on 2016-04-13 15:22  傻啦吧唧的程序员丶  阅读(220)  评论(0编辑  收藏  举报

导航