您的位置:首页 > 理论基础 > 计算机网络

okhttp的二次封装

2016-12-26 15:34 246 查看
okhttp是一个很优秀的网络访问框架,它的有点暂且不表,最近在使用这个框架,对其进行了二次封装,暂时先记录下来。在使用一些网络访问的时候,我们要回调它们的接口以获取所需要的数据,这就使得我们有时候要进行多次访问网络的时候很不方便,而且如果后期要更换网络访问框架的话,几乎所有调用过网络的地方都需要修改,所有将网络请求和所使用的网络请求框架进行解耦是很有必要的。   要使用okhttp,我们要下载他的包,由于okhttp依赖okio,所以我们在使用的时候也要吧okio包一起依赖进行封装我们需要一个工具类OkHttpManager,使用单例模式  
private static OkHttpManager okHttpManager;
private OkHttpClient client;
private Handler mHandler;

public static OkHttpManager getInstance(){
if(okHttpManager ==null){
okHttpManager = new OkHttpManager();
}
return okHttpManager;
}
private OkHttpManager(){
client = new OkHttpClient();
mHandler = new Handler(Looper.getMainLooper());
}
    这里只实现一个post请求方法,参数类型为json类型  DataCallBack是我定义的一个网络访问返回之后的接口回调,并写了两个方法分别来使用它的方法然后再看p_postAsYncJsonF方法 这差不多就是这个工具类里面的方法了,这里就只写了一个post请求方法,如果需要用到其他的,直接添加即可,在回调里面调用自己的接口使用网络请求在使用的类实现接口这样就可以在它的回调里面进行数据的处理,而且如果需要更换网络框架等也不需要修改访问网络类,只需要直接面向这个接口就可以了,在回调的方法里面,可以根据标示Tag来判断是哪一个操作,在上拉刷新和下拉刷新加载的时候,很有作用,如果需要其他的东西,在设计接口的时候,可以直接添加进去,现在写的这个接口里面Request类型数据可以不添加进去,我这边因为要做一些特殊处理,所以才添加了进去
                                            
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: