1. 1.使用
 ShenBuLuoHttpImpl.getMHttpImpl(context).getAddressList(mod.getCouponCode(), new HttpAfter() {
                                @Override
public void afterSuccess(Result resultBean) {
                      //数据解析
                      Object list = resultBean.getResult();
                      KaQuanMod[] mlist = JsonUtils
                  .getObjectMapper().convertValue(
              list,
               KaQuanMod[].class);
                                    notifyDataSetChanged();

                                }

                                @Override
public void afterFail(Result resultBean) {
//mSwipeLayout.setRefreshing(false);
} @Override
public void afterError(Result resultBean) {
//mSwipeLayout.setRefreshing(false);
}
});
  1. 2.ShenBuLuoHttpImpl类
public class ShenBuLuoHttpImpl extends BaseHttpImpl {
private static ShenBuLuoHttpImpl mHttpImpl;//单例的接口处理类 private ShenBuLuoHttpImpl(Context con) {
super(con);
mContext = con;
} /**
* 获取接口处理类
*
* @param con
* @return
*/
public static ShenBuLuoHttpImpl getMHttpImpl(Context con) {
if (mHttpImpl == null) {
mHttpImpl = new ShenBuLuoHttpImpl(con);
}
return mHttpImpl;
}
  public void getAddressList(final HttpAfter afterHttp) {
  if (AppDataUtils.userId == null) {
   showToast("请登录");
   return;
  }
   new HttpHelper.Builder().toUrl(URLUtils.GET_ADDRESS)
.addParams("userId", AppDataUtils.userId)//用户ID
.addParams("token", AppDataUtils.token)
.executeGet(new AsyncHandlerTextBase() {
@Override
public void onSuccess(int statusCode, Header[] headers, String result) {
super.onSuccess(statusCode, headers, result);
                    //解析
final Result resultBean = JsonUtils.readValue(result, Result.class);
switch (Integer.valueOf(resultBean.getCode())) {
case URLUtils.RESULT_SUCCESS:
afterHttp.afterSuccess(resultBean);
break;
case URLUtils.RESULT_FAILED:
afterHttp.afterFail(resultBean);
//请求数据失败
showToast(resultBean.getReason());
break;
case URLUtils.RESULT_ERROR:
afterHttp.afterError(resultBean);
//服务器崩溃
showServerErrorMsg(resultBean);
break;
default:
// 其他情况处理,一般弹出原因
showOtherErrorMsg(resultBean);
break;
}
} @Override
public void onFailure(int statusCode, Header[] headers, String result, Throwable
throwable) {
showToast(mContext.getString(R.string.server_busy));
}
} ).build();
  }
}

  1. 3.HTTPHelper类
package com.puyuntech.sixcontry.http;

import com.loopj.android.http.AsyncHttpResponseHandler;
import com.loopj.android.http.RequestParams; /**
* Created by Nicodelee on 15/6/15.
*/
public class HttpHelper {
private RequestParams params;
private String url;
private AsyncHttpResponseHandler responseHandler; public static class Builder { private String url = ""; private RequestParams params = null;
private AsyncHttpResponseHandler responseHandler = null; public Builder(){
} public Builder toUrl(String burl){
url = burl;
return this;
} public Builder addParams(String key, String value) {
if (params == null) {
params = new RequestParams();
}
params.put(key,value);
return this;
} public Builder executeGet( AsyncHttpResponseHandler responseHandler){
AsnyClient.get(url, params, responseHandler);
return this;
} public Builder executePost( AsyncHttpResponseHandler responseHandler){
AsnyClient.post(url, params, responseHandler);
return this;
} public HttpHelper build() {
return new HttpHelper(this);
}
} private HttpHelper(Builder builder) {
params = builder.params;
url = builder.url;
responseHandler = builder.responseHandler;
} }

最新文章

  1. Eclipse in Ubuntu16.04LTS Final Beta
  2. iOS 给UILabel文字加下划线
  3. android sdk manager 闪退 打不开问题
  4. easyui 使特定tab处于选中状态
  5. linux 下ffmpeg和mencoder安装
  6. struts2 0day漏洞
  7. iOS开发之视图控制器(UIViewController)
  8. Java调用cmd命令 打开一个站点
  9. springAOP 的pointcut
  10. [leetcode-442-Find All Duplicates in an Array]
  11. nopCommerce 3.9 大波浪系列 之 网页加载Widgets插件原理
  12. VC下防止反汇编的办法(1)
  13. OOAD与UML
  14. 开源:Taurus.MVC 框架 (已支持.NET Core)
  15. 三分钟学会.NET微服务之Polly
  16. 【2019雅礼集训】【可持久化线段树】【模型转化】D1T2Permutation
  17. struts拦截器的知识
  18. 玩转X-CTR100 l STM32F4 l FPU单精度浮点性能测试
  19. 学习Java并发的课程
  20. 归并排序(C++实现)

热门文章

  1. Phaser开源2d引擎 javascript/html5游戏框架
  2. DeDe调用body文章内容
  3. iPhone 被同步到 Mac上后 如果不希望更新到Mac上在哪里删除?
  4. spring 日志
  5. 【Oracle】安装
  6. UOJ 52 元旦激光炮
  7. static用法一
  8. linux中的cd ..和cd -命令有什么区别?
  9. 读取Word文档的标题
  10. DateTime用法二