httpclient和httpurlconnection,感觉是不是非常麻烦,而Google特别为开发人员考虑。推出了Volley。从此妈妈再也不操心我的联网问题了,哪里联不上联哪里,Volley让联网更easy和更快。而且Volley请求会异步运行。不阻挡主线程联网请求无非就是Get或者Post,我们非常少用到DELETE这个请求方式,说了这么多废话。以下让我们看看Volley究竟能干啥。它真的有这么奇妙吗,芝麻开门。让我们一起来探索Volley 吧!
1、封装了的异步的RESTful 请求API;
2、一个优雅和稳健的请求队列;
3、一个可扩展的架构。它使开发者可以实现自己定义的请求和响应处理机制;
4、可以使用外部HTTP Client库;
5、缓存策略;
6、自己定义的网络图像载入视图(NetworkImageView。ImageLoader等);
package com.zqy.myvolley;
import java.util.HashMap;
import java.util.Map;
import com.android.volley.AuthFailureError;
import com.android.volley.Request;
import com.android.volley.RequestQueue;
import com.android.volley.Response;
import com.android.volley.VolleyError;
import com.android.volley.Request.Method;
import com.android.volley.Response.ErrorListener;
import com.android.volley.Response.Listener;
import com.android.volley.toolbox.StringRequest;
import com.android.volley.toolbox.Volley;
import android.os.Bundle;
import android.text.TextUtils;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.Toast;
import android.app.Activity;
public class MainActivity extends Activity implements OnClickListener {
private RequestQueue mQueue;
String url="http://www.baidu.com";
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
mQueue=Volley.newRequestQueue(this);创建一个RequestQueue对象。
initView(); } private void initView(){ final Button btnGet=(Button) findViewById(R.id.btn_get); final Button btnPost=(Button) findViewById(R.id.btn_post); btnGet.setOnClickListener(this); btnPost.setOnClickListener(this); } @Override public void onClick(View v) { switch (v.getId()) { case R.id.btn_get: initGet(); break; case R.id.btn_post: initPost(); break; default: break; } } private void initGet(){//Get请求 Method为GET mQueue.add(new StringRequest(Method.GET,url, new Listener
Method改成POST mQueue.add(new PostResquest(Method.POST,url, new Listener
OK.大功告成,是不是感觉非常easy。看完这些代码,你是不是也打算跟
httpclient和httpurlconnection say goodbye了跟Volley say hello那。最后祝愿安卓系统越做越好,让我们Android必胜宝刀行走在科技的世界里吧。Yeah~~~~
源代码下载