第一步导依赖
implementation 'com.mcxiaoke.volley:library:1.0.19'
第二步创建一个全局类 继承Application 初始化volley
/*Time:2019/4/16
*Author:zhaozhiwei
*Description:
*/public class App extends android.app.Application {
private static RequestQueue requestQueue;
@Override
public void onCreate() {
super.onCreate();
requestQueue = Volley.newRequestQueue(getApplicationContext());
}
public static RequestQueue getHttpVolley(){
return requestQueue;
}
}
第三步接着在清单文件中 application下注册一下(name属性)
第四写Volley网络请求工具类
import android.content.Context;
import android.net.ConnectivityManager;
import android.net.NetworkInfo;
import com.android.volley.AuthFailureError;
import com.android.volley.Request;
import com.android.volley.Response;
import com.android.volley.VolleyError;
import com.android.volley.toolbox.StringRequest;
import java.util.HashMap;
import java.util.Map;
/*Time:2019/4/16
*Author:zhaozhiwei
*Description:
*/public class HttpVolley {
public static HttpVolley httpVolley;
//懒汉式单例
public static synchronized HttpVolley getInstance(){
if (httpVolley==null){
httpVolley = new HttpVolley();
}
return httpVolley;
}
//网络判断
public boolean isNetWorkConneted(Context context){
if (context!=null){
ConnectivityManager systemService = (ConnectivityManager) context.getSystemService(Context.CONNECTIVITY_SERVICE);
NetworkInfo networkInfo = systemService.getActiveNetworkInfo();
if (networkInfo!=null){
return networkInfo.isAvailable();
}
}
return false;
}
//Get封装
public void VolleyHttpGet(String url, final VolleyCallback volleyCallback){
StringRequest stringRequest = new StringRequest(Request.Method.GET, url, new Response.Listener<String>() {
@Override
public void onResponse(String response) {
volleyCallback.onSucceed(response);
}
}, new Response.ErrorListener() {
@Override
public void onErrorResponse(VolleyError error) {
volleyCallback.onFail(error);
}
});
stringRequest.setTag("testget");
App.getHttpVolley().add(stringRequest);
}
public void VolleyHttpPost(String url, final String phone, final String pwd, final VolleyCallback volleyCallback) {
StringRequest stringRequest1 = new StringRequest(Request.Method.POST, url, new Response.Listener<String>() {
@Override
public void onResponse(String response) {
volleyCallback.onSucceed(response);
}
}, new Response.ErrorListener() {
@Override
public void onErrorResponse(VolleyError error) {
volleyCallback.onFail(error);
}
}){
@Override
protected Map<String, String> getParams() throws AuthFailureError {
Map<String, String> map = new HashMap();
map.put("phone", phone);
map.put("pwd", pwd);
return map;
}
};
//设置请求的Tag标签,可以在全局请求队列中通过Tag标签进行请求的查找
stringRequest1.setTag("textpost");
App.getHttpVolley().add(stringRequest1);
}
public interface VolleyCallback{
void onSucceed(String data);
void onFail(VolleyError error);
}
}
然后就封装好了,在别的类调用就可以