OkHttp的封装和使用详解

时间:2024-01-02 23:25:38

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", "", "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", "", "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