Volley基本用法

下载Volley

git clone https://android.googlesource.com/platform/frameworks/volley

AndroidManifest.xml中添加如下权限:

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

StringRequest的用法

  1. RequestQueue是一个请求队列对象,它可以缓存所有的HTTP请求,然后按照一定的算法并发地发出这些请求,内部设计是高并发
RequestQueue mQueue = Volley.newRequestQueue(context);//获取RequestQueue对象
  1. StringRequest对象,StringRequest的构造函数需要传入三个参数,第一个参数就是目标服务器的URL地址,第二个参数是服务器响应成功的回调,第三个参数是服务器响应失败的回调。
StringRequest stringRequest = new StringRequest("http://www.baidu.com",
						new Response.Listener<String>() {
							@Override
							public void onResponse(String response) {
								Log.d("TAG", response);
							}
						}, new Response.ErrorListener() {
							@Override
							public void onErrorResponse(VolleyError error) {
								Log.e("TAG", error.getMessage(), error);
							}
						});

StringRequest stringRequest = new StringRequest(Method.POST, url,  listener, errorListener);
StringRequest stringRequest = new StringRequest(Method.POST, url,  listener, errorListener) {
	@Override
	protected Map<String, String> getParams() throws AuthFailureError {
		Map<String, String> map = new HashMap<String, String>();
		map.put("params1", "value1");
		map.put("params2", "value2");
		return map;
	}
};

3.将这个StringRequest对象添加到RequestQueue里面

mQueue.add(stringRequest);

JsonRequest的用法

JsonRequest继承自Request类的,JsonRequest是一个抽象类,因此我们无法直接创建它的实例。JsonRequest有两个直接的子类,JsonObjectRequest和JsonArrayRequest,一个是用于请求一段JSON数据的,一个是用于请求一段JSON数组的。

new出一个JsonObjectRequest对象

JsonObjectRequest jsonObjectRequest = new JsonObjectRequest("http://m.weather.com.cn/data/101010100.html", null,
		new Response.Listener<JSONObject>() {
			@Override
			public void onResponse(JSONObject response) {
				Log.d("TAG", response.toString());
			}
		}, new Response.ErrorListener() {
			@Override
			public void onErrorResponse(VolleyError error) {
				Log.e("TAG", error.getMessage(), error);
			}
		});

ImageRequest的用法

原文地址:https://www.cnblogs.com/lyszyl/p/10805647.html