因为项目需要封装了其网络层,主要对其原来的模式进行改进,使用的回调的方式来进行网络的访问和返回结果的处理,还有就是在View层和网络层之间加了一个中间层,用来分配各种网络请求,这样就可以方便的调度和管理。
我就不拿原项目的代码来演示,自己写了一个demo,首先是最底层,处理最基本的Http协议,里面包含一个execute方法,用来Post或者Get获取数据,这里为了方便我只写了一个Get,可以根据具体需要进行改成Post或者其他方法:
可以看到这个execute方法的参数是String url和Map<String,String> map,这样我们就需要一个POJO来构造这些参数:
接下来是一个工厂类,这里用到了简单工厂模式,可以根据不同的参数很方便的创造出POJO的实例:
接下来是中间层,所有的网络方法都需要经过这里才能调用底层协议,在这里进行各种网络方法的调度和管理:
final NetworkPOJO request = NetworkFactory.creategao(); //构造POJO btn.setOnClickListener(new OnClickListener() { @Override public void onClick(View arg0) { Network.postOnThread(request, new Callback() { @Override public void onSuccess(String json) { text.setText(json); } @Override public void onError() { text.setText("Error"); } }); } });
版权声明:本文为博主原创文章,未经博主允许不得转载。
原文地址:http://blog.csdn.net/woshifano/article/details/46984729