安卓网络请求框架Volley的使用

简单记录Volley框架的初级使用方法

使用步骤:

  导入Volley.jar包

  声明一个消息队列对象,并实例化

  声明实例化一个消息请求对象

  把消息请求对象放进消息队列中

package com.contentprovide.liuliu.demo_volley_2;

import android.os.Bundle;
import android.support.annotation.Nullable;
import android.support.v7.app.AppCompatActivity;
import android.widget.Toast;

import com.android.volley.Request;
import com.android.volley.RequestQueue;
import com.android.volley.Response;
import com.android.volley.VolleyError;
import com.android.volley.toolbox.StringRequest;
import com.android.volley.toolbox.Volley;

public class MainActivity extends AppCompatActivity {

    //声明一个消息队列对象
    public RequestQueue requestQueue;

    String url = "http://apis.juhe.cn/mobile/get?phone=18460364031&dtype=json&key=72a24be15b8b58c599d4d2f994e26cdb";


    @Override
    protected void onCreate(@Nullable Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);


//        实例化消息队列对象
        requestQueue = Volley.newRequestQueue(getApplicationContext());

        a();


    }


    public void a() {

//声明实例化消息请求对象
        StringRequest stringRequest = new StringRequest(Request.Method.GET, url, new Response.Listener<String>() {
            @Override
            public void onResponse(String s) {

//                将返回结果通过Toast显示
                Toast.makeText(getApplicationContext(), s, Toast.LENGTH_LONG).show();
            }
        }, new Response.ErrorListener() {
            @Override
            public void onErrorResponse(VolleyError volleyError) {

            }
        });

//        设定一个Tag,用于切换Activity时取消请求
        stringRequest.setTag("myresquest");
//        把网络消息请求添加进队列中
        requestQueue.add(stringRequest);

    }

//    当Activity切换并且当前的队列不为空时取消网络请求
    @Override
    protected void onStop() {
        super.onStop();

        if(requestQueue!=null){
            requestQueue.cancelAll("myrequest");
        }

    }
}

 

posted @ 2018-03-15 10:16  西红柿里没有番茄  阅读(149)  评论(0编辑  收藏  举报