MainActivity例如下列:

package cc.cn;

import java.util.HashMap;
import org.json.JSONObject;
import android.app.Activity;
import android.content.Context;
import android.os.Bundle;
import com.android.volley.AuthFailureError;
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.toolbox.JsonObjectRequest;
import com.android.volley.toolbox.StringRequest;
import com.android.volley.toolbox.Volley;
/**
* Demo描写叙述:
* 去年一个项目中简单的使用了Volley,參见:
* lfdfhl/article/details/12223345
* 近期guolin写了几篇文章具体介绍Volley,所以在此比較系统地学习一下.
* 在本演示样例中,主要包含:
* 1 利用Volley实现Get请求
* 2 利用Volley实现Post请求
* 3 利用Volley实现Json数据请求
*
* 注意事项:
* 1 引入jar包volley.jar
* 2 网络权限<uses-permission android:name="android.permission.INTERNET"/>
*
* 学习资料:
* guolin_blog/article/details/17482095
* Thank you very much
*
*/
public class MainActivity extends Activity {
private RequestQueue mRequestQueue;
private StringRequest mStringRequest;
private Context mContext;
private JsonObjectRequest mJsonObjectRequest;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
volley_get();
//volley_post();
//volley_json();
}



//利用Volley实现Get请求
private void volley_get(){
mContext=this;
String url="http://www.baidu.com/";
//1 创建RequestQueue对象
mRequestQueue=Volley.newRequestQueue(mContext);
//2 创建StringRequest对象
mStringRequest = new StringRequest(
url,
new Response.Listener<String>() {
@Override
public void onResponse(String response) {
System.out.println("请求结果:"+response);
}
},
new Response.ErrorListener() {
@Override
public void onErrorResponse(VolleyError error) {
System.out.println("请求错误:"+error.toString());
}
});
//3 将StringRequest加入到RequestQueue
mRequestQueue.add(mStringRequest);
}

//利用Volley实现Post请求
private void volley_post() {
String url = "http://hxyj.cwwic.cn/wap/api_cs/user.php?action=login";
mContext = this;
mRequestQueue = Volley.newRequestQueue(mContext);
mStringRequest = new StringRequest(
Method.POST,
url,
new Response.Listener<String>() {
@Override
public void onResponse(String response) {
System.out.println("请求结果:" + response);
}
},
new Response.ErrorListener() {
@Override
public void onErrorResponse(VolleyError error) {
System.out.println("请求错误:" + error.toString());
}
}) {
//携带參数
@Override
protected HashMap<String, String> getParams()throws AuthFailureError {
HashMap<String, String> hashMap = new HashMap<String, String>();
hashMap.put("un", "411111222");
hashMap.put("pw", "180034111");
return hashMap;
}

};
mRequestQueue.add(mStringRequest);

}

//利用Volley实现Json数据请求
private void volley_json() {
mContext = this;
String url = "http://m.weather.com.cn/data/101010100.html";
// 1 创建RequestQueue对象
mRequestQueue = Volley.newRequestQueue(mContext);
// 2 创建JsonObjectRequest对象
mJsonObjectRequest = new JsonObjectRequest(
url,
null,
new Response.Listener<JSONObject>() {
@Override
public void onResponse(JSONObject response) {
System.out.println("请求结果:" + response.toString());
}
},
new Response.ErrorListener() {
@Override
public void onErrorResponse(VolleyError error) {
System.out.println("请求错误:" + error.toString());
}
});

// 3 将JsonObjectRequest加入到RequestQueue
mRequestQueue.add(mJsonObjectRequest);

}



}


main.xml例如以下:

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="vertical" >

<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="学习Volley(一)"
android:layout_centerInParent="true"
/>

</RelativeLayout>



版权声明:本文博主原创文章,博客,未经同意不得转载。