在正式介绍CustomAsyncHttpClient之前,刚好最近有一个朋友找我帮忙给他们看下一个APP。我先上一段代码截图。一段检测版本更新的接口代码。

aaarticlea/png;base64,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" alt="" />

aaarticlea/png;base64,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" alt="" />

大家也看出问题所在了吧。1.网络操作、数据解析操作的业务出现在了activity。2.没有使用线程池 3.josn的解析,没有面向对象。代码高耦合,复用性差、可靠性差。下面开始进入主题,如何在业务层都看不到json的解析代码了,直接通过CustomAsyncHttpClient拿到目标对象进行操作。

 /**
* RequestModel.java
*
* @author: allen
* @Function: 网络请求模型
* @createDate: 2014-8-29
* @update:
*/
public class RequestModel {
private String url;// 请求网络地址
private RequestParams params;// 请求参数
private Class<?> cls;// 请求转换数据模型类
private boolean showDialog = true;// 是否显示网络加载对话框
private boolean showErrorMessage = false;// 是否显示错误的信息 public String getUrl() {
return url;
} public void setUrl(String url) {
this.url = url;
} public RequestParams getParams() {
return params;
} public void setParams(RequestParams params) {
this.params = params;
} public Class<?> getCls() {
return cls;
} public void setCls(Class<?> cls) {
this.cls = cls;
} public boolean isShowDialog() {
return showDialog;
} public void setShowDialog(boolean showDialog) {
this.showDialog = showDialog;
} public boolean isShowErrorMessage() {
return showErrorMessage;
} public void setShowErrorMessage(boolean showErrorMessage) {
this.showErrorMessage = showErrorMessage;
} @Override
public String toString() {
return "RequestModel [url=" + url + ", params=" + params + ", cls="
+ cls + ", showDialog=" + showDialog + ", showErrorMessage="
+ showErrorMessage + "]";
} }

RequestModel

 /**
* @className:ResponeModel.java
* @author: allen
* @Function: 网络响应模型
* @createDate: 2014-8-29
* @update:
*/
public class ResponeModel {
private Object resultObj;// 转换的Json
private JSONObject dataResult;// 转化为对象的json
private String json;// 服务器返回的整体Json
private Integer code = 0;// 错误码
private boolean status;// 状态
private String msg = "";// 错误信息
private String result = "";// 数据
private int totalCount;// 总条数
private Class<?> cls;// 请求转换数据模型类
private String easyName;// 直接解析的名字
private boolean isList = false;// 是否是数组,默认是对象
private String listCountKey = "totalCount";// 获取总条数的key
private boolean isNew = true;// 是否新的解析
private int buyCount; public boolean isNew() {
return isNew;
} public void setNew(boolean isNew) {
this.isNew = isNew;
} public String getListCountKey() {
return listCountKey;
} public void setListCountKey(String listCountKey) {
this.listCountKey = listCountKey;
} public boolean isList() {
return isList;
} public void setList(boolean isList) {
this.isList = isList;
} public String getEasyName() {
return easyName;
} public void setEasyName(String easyName) {
this.easyName = easyName;
} public Class<?> getCls() {
return cls;
} public void setCls(Class<?> cls) {
this.cls = cls;
} public Object getResultObj() {
return resultObj;
} public void setResultObj(Object resultObj) {
this.resultObj = resultObj;
} public String getResult() {
return result;
} public void setResult(String result) {
this.result = result;
} public JSONObject getDataResult() {
return dataResult;
} public void setDataResult(JSONObject dataResult) {
this.dataResult = dataResult;
} public String getJson() {
return json;
} public void setJson(String json) {
this.json = json;
} public Integer getCode() {
return code;
} public void setCode(Integer code) {
this.code = code;
} public boolean isStatus() {
return status;
} public void setStatus(boolean status) {
this.status = status;
} public String getMsg() {
return msg;
} public void setMsg(String msg) {
if (StringUtils.isEmpty(msg)) {
this.msg = "服务器发生未知错误!";
} else {
this.msg = msg;
}
} public int getTotalCount() {
return totalCount;
} public void setTotalCount(int totalCount) {
this.totalCount = totalCount;
} /**
* 初始化所有数据
*/
public void init() { initResult();
} /**
* 获取某一字段
*
* @return
*/
public String parseByName(String name) {
try {
if (!getDataResult().isNull(name)
&& !TextUtils
.isEmpty((getDataResult().get(name).toString()))) {
return (getDataResult().get(name).toString());
}
} catch (JSONException e) {
// TODO Auto-generated catch block
e.printStackTrace();
return "";
}
return "";
} public JSONObject parseJsonToJSONObject(String json) {
try {
return new JSONObject(json);
} catch (JSONException e) {
// TODO Auto-generated catch block
e.printStackTrace();
return new JSONObject(); } } /**
* 获取某一字段
*
* @return
*/
public String parseByName(JSONObject object, String name) {
try {
if (!object.isNull(name)
&& !TextUtils.isEmpty((object.get(name).toString()))) {
return (object.get(name).toString());
}
} catch (JSONException e) {
// TODO Auto-generated catch block
e.printStackTrace();
return "";
}
return "";
} /**
* 处理返回的结果,做一些简单的处理
*/
private void initResult() {
if (isStatus()) {
if (getResult() != null && getResult().length() > 0) {
String Head = getResult().substring(0, 1);
// 注:自动快捷解析的情况
// 1.data直接是对象
// 2.data直接是数组(不含条数)
// 3.data直接是对象,对象里面包含“result”数组(条数可选)
// 其它情况均需返回对象,在你的service中进行处理 // Data是对象
if ("{".equals(Head)) {
JSONObject object;
try {
object = new JSONObject(getResult()); setDataResult(object);
if (isList) {
// 带分页
setResultObj(JsonUtil.convertJsonToList(
object.get(getEasyName()).toString(),
getCls()));
if (!object.isNull(getListCountKey())) {// list
// 带总条数
try {
setTotalCount(Integer.parseInt(object
.getString(getListCountKey())));
} catch (Exception e) {
// TODO: handle exception
setTotalCount(0);
}
// 设置其他分页信息
}
return;
} setResultObj(JsonUtil.convertJsonToObject(
getResult(), getCls())); } catch (Exception e) {
e.printStackTrace();
} } else if ("[".equals(Head)) {// data是数组
setResultObj(JsonUtil.convertJsonToList(getResult(),
getCls()));
}
}
}
}
}

ResponeModel

RequestModel、ResponeModel封装了网络操作的输入模型和输出模型。RequestModel根据AsyncHttpClient的输入要求做的封装,同时可以控制是否要显示服务器的错误提示信息,是否弹出对话框。ResponeModel封装了业务层所需要的实体对象。接下来看下关键的CustomAsyncHttpClient处理。


 public class CustomAsyncResponehandler extends AsyncHttpResponseHandler {

    private CustomAsyncResponehandler customAsyncResponehandler;

    public CustomAsyncResponehandler() {
customAsyncResponehandler = null;
} public CustomAsyncResponehandler(
CustomAsyncResponehandler customAsyncResponehandler) {
if (customAsyncResponehandler != null)
this.customAsyncResponehandler = customAsyncResponehandler;
} public void onSuccess(ResponeModel baseModel) {
if (customAsyncResponehandler != null)
customAsyncResponehandler.onSuccess(baseModel);
} @Override
public void onStart() {
super.onStart();
if (customAsyncResponehandler != null)
customAsyncResponehandler.onStart();
} @Override
public void onFinish() {
super.onFinish();
if (customAsyncResponehandler != null)
customAsyncResponehandler.onFinish();
} @Override
public void onFailure(Throwable error, String content) {
super.onFailure(error, content);
if (customAsyncResponehandler != null)
customAsyncResponehandler.onFailure(error, content);
}
}

CustomAsyncResponehandler


 public class CustomAsyncHttpClient {
private String TAG = "CustomAsyncHttpClient";
private boolean isTag = true; private AsyncHttpClient asyncHttpClient;
private MyProgressDialog dialog;
private Context mContext;
private ResponeModel baseModel; public CustomAsyncHttpClient(Context context) {
asyncHttpClient = new AsyncHttpClient();
mContext = context;
if (mContext != null) {
dialog = new MyProgressDialog(mContext, "", true);
dialog.tv_value.setVisibility(View.GONE);
}
baseModel = new ResponeModel();
} public void post(final RequestModel requestModel,
final CustomAsyncResponehandler responseHandler) { RequestParams newParams = new RequestParams();
com.alibaba.fastjson.JSONObject jsonObject = new
com.alibaba.fastjson.JSONObject();
for (BasicNameValuePair param :
requestModel.getParams().getParamsList()) {
jsonObject.put(param.getName(), param.getValue());
}
newParams.fileParams=requestModel.getParams().fileParams; newParams.put("p", jsonObject.toString()); LogUtil.d(TAG, requestModel.getUrl() + "?"
+ newParams.toString(), isTag);
asyncHttpClient.post(requestModel.getUrl(), newParams,
new AsyncHttpResponseHandler() {
@Override
public void onStart() {
super.onStart();
LogUtil.d(TAG, "onStart___", isTag);
if (requestModel.isShowDialog()) {// 显示网络对话框
if (mContext != null) {
dialog.show();
}
}
responseHandler.onStart();
} @Override
public void onFinish() {
super.onFinish();
LogUtil.d(TAG, "onFinish___", isTag);
if (requestModel.isShowDialog()) {// 隐藏网络对话框
if (mContext != null) {
dialog.dismiss();
}
}
responseHandler.onFinish();
} @Override
public void onSuccess(String content) {
super.onSuccess(content);
LogUtil.d(TAG, "onSuccess___" + content, isTag); // TODO:解密返回的参数
baseModel = JsonUtil.convertJsonToObject(content,
ResponeModel.class); if (baseModel != null) {
baseModel.setCls(requestModel.getCls());
baseModel.setJson(content);
baseModel.init();
if(baseModel.isStatus()){
baseModel.setMsg("操作成功");
}
} if (requestModel.isShowErrorMessage()&&!baseModel.isStatus()) {
if (mContext != null) {
UIHelper.ShowMessage(mContext,
baseModel.getMsg());
}
} responseHandler.onSuccess(baseModel);
} @Override
public void onFailure(Throwable error, String content) {
super.onFailure(error, content);
LogUtil.d(TAG, "onFailure___" + content, isTag);
if (mContext != null) {
UIHelper.ShowMessage(mContext,
"网络异常");
}
responseHandler.onFailure(error, content);
}
});
}
}

CustomAsyncHttpClient


以后无须再为网络操作而操碎心,下一步希望在Base里面加入支持xml的自动对象转换以及webservice服务器调用的封装支持,希望有兴趣的、或者有更好方案的大神联系我。下面再上一下上一节的使用案例,网络操作的登陆方法:

public void login(final String userName, final String password, final CustomAsyncResponehandler handler) {
RequestModel requestModel = new RequestModel();
RequestParams params = new RequestParams();
params.put("userName", userName);
params.put("password", password);
requestModel.setParams(params);
requestModel.setCls(User.class);
requestModel.setShowErrorMessage(true);
requestModel.setUrl(Urls.userLogin);
httpClient.post(requestModel, new CustomAsyncResponehandler() {
@Override
public void onSuccess(ResponeModel baseModel) {
super.onSuccess(baseModel); if (baseModel != null && baseModel.isStatus()) {
AppContext.currentUser = (User) baseModel.getResultObj();
AppContext.currentUser.setUserName(userName);
if (userDao != null) {
userDao.insert(AppContext.currentUser);
}
}
handler.onSuccess(baseModel);
}
});
}

Base-Android快速开发框架(五)--网络操作之RequestModel、ResponeModel、CustomAsyncHttpClient的更多相关文章

  1. Base-Android快速开发框架(四)--网络操作之FastJson以及AsyncHttpClient

    Android的展示数据,除了上章所讲的本地存储外,大部分数据都来自于网络.首先介绍一下Android APP开发常见的网络操作方式.从网络层面上有底层的tcp/ip,也就是我们常见的socket套接 ...

  2. AndroidAnnotations(Code Diet)android快速开发框架

    最近用了一款很不错的android快速开发框架,1000行的代码瞬间变成几百行,不用你会后悔的 特点: (1) 依赖注入:包括view,extras,系统服务,资源等等(2) 简单的线程模型,通过an ...

  3. Android快速开发框架ZBLibrary源码分享

    坐标标准库ZBLibrary,是一个MVP架构的Android快速开发框架,提供一套开发标准(UI,Data,Listener)以及模板和工具类并规范代码. 封装层级少,简单高效兼容性好.Androi ...

  4. Android快速开发框架汇总

    知乎贴:Android 开发有什么好的架构么? 里面这篇不错:Architecting Android…The clean way? 知乎贴: 一.如果对App的性能.包size有要求,对代码有洁癖不 ...

  5. [原] Android快速开发框架-AndroidFine,GitHub开源

    Android快速开发框架 UI组件,不止是简单整合,更易用 沉浸式状态栏,界面更漂亮 左滑返回,非常流畅 简单.可复用.易扩展的底部导航 PagerSlidingTabStrip,导航标签文字颜色和 ...

  6. 使用android快速开发框架afinal的FinalDb操作android数据库

    http://my.oschina.net/yangfuhai/blog/87459 今天给大家介绍下#afinal#来操作android的数据库sqlite. #afinal#是一个android的 ...

  7. Android 快速开发框架:推荐10个框架:afinal、ThinkAndroid、andBase、KJFrameForAndroid、SmartAndroid、dhroid..

    对于Android初学者以及对于我们菜鸟,这些大神们开发的轻量级框架非常有用(更别说开源的了). 下面转载这10个框架的介绍:(按顺序来吧没有什么排名). 一.  Afinal 官方介绍: Afina ...

  8. android 快速开发框架

    https://github.com/lipanquan/LPQRapidDevelopmentFramework 依赖LPQLibrary https://github.com/lipanquan/ ...

  9. Android 快速开发框架XUtils

    转载自:http://www.apkbus.com/forum.php?mod=viewthread&tid=241060&highlight=xUtils 最近搜了一些框架供初学者学 ...

随机推荐

  1. 提高(Android)开发效率的工具与网站

    Dev_Tools 写这篇不是为了"水",是因为有些工具确实不错,但是换个电脑要找到或者在某个时候你想用但是你只知道存在了书签里.然后就只能下载chrome然后登录账户同步书签了. ...

  2. Python使用re模块正则式的预编译及pickle方案

    项目上线要求当中有言论和昵称的过滤需求, 客户端使用的是python脚本, python脚本中直接利用re模块来进行正则匹配, 一开始的做法是开启游戏后, 每帧编译2条正则式, 无奈运营需求里面100 ...

  3. 股票交易(洛谷U6084)

    题目背景 kkk最近迷上了炒股. 题目描述 kkk炒了N天股,第i天的股价为a[i]元.kkk希望股票每天都上涨1元钱,但是操盘手lzn并不想让kkk赚很多钱导致他亏本,于是a[i]相对a[i-1]就 ...

  4. JavaScript中typeof的坑

    typeof是一个运算符,它对操作数返回的结果是一个字符串,有6种(只针对ES,不包含HOST环境对象) 'undefined' 'boolean' 'string' 'number' 'object ...

  5. OS开发(Objective-C)常用库索引

    code4app.com 这网站不错,收集各种 iOS App 开发可以用到的代码示例 cocoacontrols.com/ 英文版本的lib收集 objclibs.com/ 精品lib的收集网站 h ...

  6. js便签笔记(13)——jsonp其实很简单【ajax跨域请求】

    前两天被问到ajax跨域如何解决,还真被问住了,光知道有个什么jsonp,迷迷糊糊的没有说上来.抱着有问题必须解决的态度,我看了许多资料,原来如此... 为何一直知道jsonp,但一直迷迷糊糊的不明白 ...

  7. [LeetCode] #167# Two Sum II : 数组/二分查找/双指针

    一. 题目 1. Two Sum II Given an array of integers that is already sorted in ascending order, find two n ...

  8. 4k 对齐,你准备好了吗?

    什么是 4k 对齐? 其实与 “ 4K对齐 ” 相关联的是一个叫做 “ 高级格式化 ” 的分区技术.“ 高级格式化 ” 是国际硬盘设备与材料协会为新型数据结构格式所采用的名称.这是主要鉴于目前的硬盘容 ...

  9. wechat server的配置

    一 服务器地址 https://github.com/donal-tong/wechat4server 包括源代码及数据库脚本放在dump文件夹里 1.根据sql脚本创建需要的数据库hcapi,然后命 ...

  10. G - Zombie’s Treasure Chest(动态规划专项)

    G - Zombie’s Treasure Chest Time Limit:1000MS     Memory Limit:32768KB     64bit IO Format:%I64d &am ...