android网络请求-Okgo简单封装

日记:
2018年9月6日:中非合作论坛结束第二天,刘强东性侵案发第4天,距离中秋节还有18天。
未来可期。

    **
    * Created by Administrator on 2017/9/6 0006.
   *okgo网络请求封装方法。
    */

public class OkgoUtils {
/**
 * okgo 的GET请求
 *
 * @param requestCode        标识码  用于标识具体的网络请求
 * @param url                请求的url
 * @param param              请求的参数
 * @param tag                tag用于标识和取消网络请求
 * @param okGoUtilsInterFace 接口
 */
public static void GET(final int requestCode, String url, Map param, Object tag, final OkGoUtilsInterFace okGoUtilsInterFace) {
    if (NetworkUtils.isConnected()) {
        OkGo.get(url)
                .tag(tag)
                .params(param)
                .headers("Content-Type", "application/json; charset=utf-8")
                .execute(new StringCallback() {
                    @Override
                    public void onStart(Request request) {
                        super.onStart(request);
                        okGoUtilsInterFace.onStart(request);
                    }
                    @Override
                    public void onSuccess(Response response) {
                        Log.i("执行了","执行了");
                        okGoUtilsInterFace.onSuccess(response, requestCode);
                    }
                    @Override
                    public void onError(Response response) {
                        super.onError(response);
                        okGoUtilsInterFace.Error(response);
                    }
                    @Override
                    public void onFinish() {
                        super.onFinish();
                        okGoUtilsInterFace.onFinsh();
                    }
                });

    } else {
        okGoUtilsInterFace.onNetWorkError();
    }
}
/*
* 多个文件对一个一个key,同时上传
* */
public static void fileonemorepost(final int requestCode, String url, List files, Object tag, final  OkGoUtilsInterFace okgoUtilsInterFace){
     OkGo.post(url)
             .tag(tag)
             .addFileParams("files",files)
             .execute(new StringCallback() {
                 @Override
                 public void onSuccess(Response response) {
                     okgoUtilsInterFace.onSuccess(response,requestCode);
                 }
                 @Override
                 public void onError(Response response) {
                     super.onError(response);
                     okgoUtilsInterFace.Error(response);
                 }
                 @Override
                 public void onFinish() {
                     super.onFinish();
                     okgoUtilsInterFace.onFinsh();
                 }
             });
}
/*
* 上传文件多个文件,一个文件对于一个key方法
* */
public static void filepost(final int requestCode, String url, List files, Object tag, final OkGoUtilsInterFace okGoUtilsInterFace){
    if (NetworkUtils.isConnected()){
   PostRequest request= OkGo.post(url)
                .tag(tag);
                for(int i=0;i response) {
                        okGoUtilsInterFace.onSuccess(response, requestCode);
                    }
                    @Override
                    public void uploadProgress(Progress progress) {
                        //进度
                    }
                    @Override
                    public void onError(Response response) {
                        super.onError(response);
                        okGoUtilsInterFace.Error(response);
                    }
                    @Override
                    public void onFinish() {
                        super.onFinish();
                        okGoUtilsInterFace.onFinsh();
                    }
                });
    }
}

/**
 * okgo POST
 *
 * @param requestCode        标识码  用于标识具体的网络请求
 * @param url                请求的url
 * @param param              请求的参数
 * @param tag                tag用于标识和取消网络请求
 * @param okGoUtilsInterFace 接口
 */
public static void POST(final int requestCode, String url, Map param, Object tag, final OkGoUtilsInterFace okGoUtilsInterFace) {
    if (NetworkUtils.isConnected()) {
        OkGo.post(url)
                .tag(tag)
                .params(param)
                .execute(new StringCallback() {
                    @Override
                    public void onStart(Request request) {
                        super.onStart(request);
                        okGoUtilsInterFace.onStart(request);
                    }
                    @Override
                    public void onSuccess(Response response) {
                        okGoUtilsInterFace.onSuccess(response, requestCode);
                    }
                    @Override
                    public void onError(Response response) {
                        super.onError(response);
                        okGoUtilsInterFace.Error(response);
                    }
                    @Override
                    public void onFinish() {
                        super.onFinish();
                        okGoUtilsInterFace.onFinsh();
                    }
                });
    } else {
        okGoUtilsInterFace.onNetWorkError();
    }
}
}

你可能感兴趣的:(android网络请求-Okgo简单封装)