Volley的简单二次封装(个人笔记)

1.最重要最容易忽略的“注册”,在AndroidManifest中输入 name。
例如:android:name=".Volley.VolleyApplication"
2.创建3个类

public class NetworkUtils {
   private static volatile NetworkUtils networkUtils;
   
   private  NetworkUtils (){
        
    }
   
    public static NetworkUtils getNetworkUtils() {
        if (networkUtils == null) {
            synchronized (NetworkUtils.class) {
                if (networkUtils == null) {
                    networkUtils = new NetworkUtils();
                }
            }
        }
        return networkUtils;
    }

    private RequestQueue requestQueue = VolleyApplication.requestQueue;


    public void VolleyPost(String url, JSONObject jsonObject, final Handler handler, final int what) {

        JsonObjectRequest jsonObjectRequest = new JsonObjectRequest(JsonObjectRequest.Method.POST, url, jsonObject, new Response.Listener<JSONObject>() {
            @Override
            public void onResponse(JSONObject response) {
                Message message = Message.obtain();
                message.what = what;
                message.obj = response.toString();
                handler.sendMessage(message);
            }
        }, new Response.ErrorListener() {
            @Override
            public void onErrorResponse(VolleyError error) {

                Log.i("TAG", "onErrorResponse: "+error.toString());
            }
        });
        requestQueue.add(jsonObjectRequest);


    }}

public class VolleyApplication extends Application {
public  static RequestQueue requestQueue;

    @Override
    public void onCreate() {
        super.onCreate();
        requestQueue= VolleyUtils.getRequestQueue(this);
    }

}

    public class VolleyUtils {
    private static RequestQueue requestQueue;

    public static RequestQueue getRequestQueue(Context context) {
        if (requestQueue==null){
            synchronized (RequestQueue.class){
                if (requestQueue==null){
                    requestQueue= Volley.newRequestQueue(context);
                }
            }
        }
        return requestQueue;
    }
}

3.运用方法:

NetworkUtils.getNetworkUtils().VolleyPost(path,jsonObject,mHandler,what);
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值