//封装的消息队列
public class MyApp extends Application{
//1.创建Volley的请求队列,设置为全局变量
private static RequestQueue mQueue;
@Override
public void onCreate() {
super.onCreate();
// 初始化请求队列
mQueue = Volley.newRequestQueue(getApplicationContext());
}
// 返回请求队列
public static RequestQueue getHttpQueue(){
return mQueue;
}
}
//主类
public class StringRequestActivity extends AppCompatActivity {
private String url = "http://www.qubaobei.com/ios/cf/dish_list.php?stage_id=1&limit=20&page=1";
private String postUrl = "http://218.244.149.129:9010/api/companylist.php";
private TextView tv;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_string_request);
tv = (TextView) findViewById(R.id.tv1);
}
public void onClick(View view) {
switch (view.getId()) {
case R.id.btn_get:
getWebData(url);
break;
case R.id.btn_post:
Map<String,String>map = new HashMap<>();
map.put("industryid","99");
postWebData(map);
break;
}
}
/**
* Volley当中get请求的方法
* */
private void getWebData(String url) {
// 2.选择请求对象
StringRequest request = new StringRequest(url, new Response.Listener<String>() {
@Override
public void onResponse(String s) {
// 网络请求成功时,会回调的方法
tv.setText(s);
}
}, new Response.ErrorListener() {
@Override
public void onErrorResponse(VolleyError volleyError) {
// 网络请求失败时,会回调的方法
tv.setText("网络加载失败,请稍后在试......");
}
});
// 3.添加请求对象到请求队列当中
MyApp.getHttpQueue().add(request);
}
/**
* volley当中的post的请求
* */
private void postWebData(final Map<String,String>map){
// 2.选择请求对象
StringRequest request = new StringRequest(Request.Method.POST, postUrl, new Response.Listener<String>() {
@Override
public void onResponse(String s) {
tv.setText(s);
}
}, new Response.ErrorListener() {
@Override
public void onErrorResponse(VolleyError volleyError) {
tv.setText("网络加载失败,请稍后再试.....");
}
}){
@Override
protected Map<String, String> getParams() throws AuthFailureError {
return map;
}
};
// 3.把请求对象加入到请求队列当中
MyApp.getHttpQueue().add(request);
}
}
//布局仅仅需要一个TextView即可,所以这里就不放上去了
//添加权限
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
//清单文件注册 name---