OkHttpUtils的使用

来源:互联网 发布:java api 1.6英文版 编辑:程序博客网 时间:2024/05/18 05:35

OkHttpUtils是一个非常好的网络协议框架,它是在OkHttp的基础上进行了二次封装。要使用这个类首先下载jar包,如下:

http://download.csdn.net/download/xxdw1992/10151070


OkHttpUtils下载文件 

OkHttpUtils.get().url("网址").build().execute(new FileCallBack("文件存储的路径","文件名") {                @Override                public void onError(Call call, Exception e, int i) {                    if (NetConnectUtil.NetConnect(getActivity())) {                        DialogNotileUtil.show(getActivity(), "服务器异常,文件下载失败");                    } else {                        DialogNotileUtil.show(getActivity(), "未连接到网络,文件下载失败");                    }                    Logs.e(tag + "331 " + e + "  " + i);                    dialoading.close();                }                @Override                public void onResponse(File file, int i) {                    dialoading.setTv("下载完成");                    dialoading.close();                    Logs.v(tag + " 338 " + file.getAbsolutePath() + "  " + i);                    //下载完成后开始播放                    videoURL(videoUrl);                }                @Override                public void inProgress(float progress, long total, int id) {                    super.inProgress(progress, total, id);                    myprogress = (int) (progress * 100);                    Logs.v(progress + "   " + myprogress);//                    if (myprogress % 5 == 0) {                    dialoading.setTv("下载进度:" + myprogress + "%");//                    }                }            });


OkHttpUtils发送给服务器json


JSONObject jb = new JSONObject();        try {            jb.put("username", "");            jb.put("password", "");        } catch (JSONException e) {            Logs.d("127  " + e);        }        OkHttpUtils                .postString()                .url("")                .mediaType(MediaType.parse("application/json; charset=utf-8"))                .content(jb.toString())                .build()                .execute(new StringCallback() {                    @Override                    public void onError(Call call, Exception e, int i) {                                            }                    @Override                    public void onResponse(String s, int i) {                    }                });

GET请求



POST请求




Post String



Post File




Post表单形式上传文件





自定义CallBack

目前内部包含StringCallBack,FileCallBack,BitmapCallback,可以根据自己的需求去自定义Callback,例如希望回调User对象:


通过parseNetworkResponse回调的response进行解析,该方法运行在子线程,所以可以进行任何耗时操作。


混淆




显示图片




上传下载的进度显示





HEAD、DELETE、PUT、PATCH



同步的请求



取消单个请求





根据tag取消请求
















原创粉丝点击