//创建一个类,继承Addlication
public class MyApp extends Application {
private static RequestQueue queue;
@Override
public void onCreate() {
super.onCreate();
queue = Volley.newRequestQueue(getApplicationContext());
}
public static RequestQueue getHttpQueue(){
return queue;
}
}
//在清单文件中调用MyApp类
android:name=".volley.MyApp"
//HttpVolley
public class HttpVolley {
private static HttpVolley httpVolley;
private StringRequest stringRequest;
public interface VolleyCallBack{
void onSuccess(String data);
void onFail(VolleyError error);
}
//网络判断
public boolean isNet(Context context){
if (context!=null){
ConnectivityManager mConnectivityManager =
(ConnectivityManager) context.getSystemService(Context.CONNECTIVITY_SERVICE);
NetworkInfo networkInfo = mConnectivityManager.getActiveNetworkInfo();
if (networkInfo!=null){
return networkInfo.isAvailable();
}
}
return false;
}
//单例模式
public static synchronized HttpVolley getInstance(){
if (httpVolley==null){
httpVolley=new HttpVolley();
}
return httpVolley;
}
public void HttpVolleyGet(String url,final VolleyCallBack callBack){
stringRequest = new StringRequest(Request.Method.GET, url, new Response.Listener<String>() {
@Override
public void onResponse(String response) {
callBack.onSuccess(response);
}
}, new Response.ErrorListener() {
@Override
public void onErrorResponse(VolleyError error) {
callBack.onFail(error);
}
});
//设置请求的Tag标签,可以在全局请求队列中通过Tag标签进行请求的查找
stringRequest.setTag("textPost");
//将请求加入全局队列中
MyApp.getHttpQueue().add(stringRequest);
}
//post请求
public void HttpVolleyPost(String url, final Map<String,String> map,final VolleyCallBack callBack){
stringRequest = new StringRequest(Request.Method.GET, url, new Response.Listener<String>() {
@Override
public void onResponse(String response) {
callBack.onSuccess(response);
}
}, new Response.ErrorListener() {
@Override
public void onErrorResponse(VolleyError error) {
callBack.onFail(error);
}
}){
@Override
protected Map<String, String> getParams() throws AuthFailureError {
return map;
}
};
stringRequest.setTag("textPost");
MyApp.getHttpQueue().add(stringRequest);
}
}