OkHttp的封装和使用详解

Posted ganchuanpu

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了OkHttp的封装和使用详解相关的知识,希望对你有一定的参考价值。

Github地址

compile cn.yuan.yu:library:1.0.2

第一步:初始化我们的工具类

public class MyApplication extends Application {
    private static   Handler mainHandler;
    private static Context instance;
    @Override
    public void onCreate() {
        super.onCreate();
        instance = this;
        mainHandler = new Handler();
        /**
         * 初始化okhttputils
         * 第一个参数是是否提交json数据的形式还是表单的形式
         * 第二份参数是请求返回的标识code
         * 第三个参数是请求返回的正确的code值
         * 第四个参数是请求返回的提示信息key
         * 第五个参数是为了同步线程的问题
         * 第六个参数是为了弹出提示信息的上下文
         */
        OkHttpUtilsConfig.getInstance().init(false, "resultcode", "100", "msg", mainHandler,this);
    }
}
public class MyApplication extends Application {
    private static   Handler mainHandler;
    private static Context instance;
    @Override
    public void onCreate() {
        super.onCreate();
        instance = this;
        mainHandler = new Handler();
        /**
         * 初始化okhttputils
         * 第一个参数是是否提交json数据的形式还是表单的形式
         * 第二份参数是请求返回的标识code
         * 第三个参数是请求返回的正确的code值
         * 第四个参数是请求返回的提示信息key
         * 第五个参数是为了同步线程的问题
         * 第六个参数是为了弹出提示信息的上下文
         */
        OkHttpUtilsConfig.getInstance().init(false, "resultcode", "100", "msg", mainHandler,this);
    }
}

第二步,直接调用使用喽,就是这么简单粗暴

JSONObject jsonObject = new JSONObject();
jsonObject.put("username", username);
jsonObject.put("password", pwd);
L.d("登录", jsonObject.toJSONString());
RequestPacket requestPacket = new RequestPacket();
requestPacket.url = ConstantUrl.getBaseUrl();
requestPacket.addArgument("data", jsonObject.toJSONString());
requestPacket.addArgument("query", "login");
OkHttpUtil.Request(RequestPacket.POST,requestPacket,new ResponseListener<RegistGetVCodeBean>() {
                    @Override
                    public void onSuccess(RegistGetVCodeBean registGetVCodeBean) {
                    //todo somethiing
                    }

                    @Override
                    public void onFailure(String responseresult) {
                      //todo somethiing
                    }
                });

RegistGetVCodeBean

public class RegistGetVCodeBean {

}

 

 

本文出处:https://blog.csdn.net/easkshark/article/details/62897368

以上是关于OkHttp的封装和使用详解的主要内容,如果未能解决你的问题,请参考以下文章

Okhttp使用详解

网络请求框架OkHttp3全解系列:OkHttp的基本使用

安卓OKhttp请求封装

OkHttp封装

OkHttp初探2:如何使用OkHttp进行下载封装?带进度条?Kotlin+Flow版本。

Java封装OkHttp3工具类