开源框架android-async-http使用

官网:https://github.com/loopj/android-async-http


android-async-http开源框架可以是我们轻松的获取网络数据或者向服务器发送数据,使用起来也简单,详细请看官网:

到官网下载zip包,解压,里面有完整的代码和各种版本的jar包和demo,源码在library里面,jar包在releases里面。项目更新速度很快,老版本的回调是一个普通类,最新版是一个接口。

以下代码是基于老版本的,记不清哪个版本了


通过一个url地址获取服务器的数据,只需要调用一个方法就行了。URl为请求服务数据的url地址。HCKHttpResponseHandler一个回调类,请求结束会调用它相应的方法,在回调方法里面,我们可以直接操作UI,而不会阻塞进程。下面代码是使用get方法获取数据,它还有post方法。

private HCKHttpClient httpClient=new HCKHttpClient();

String URL="http://www.baidu.com";

httpClient.get(URL,new HCKHttpResponseHandler() {

@Override

public void onFailure(Throwable error, String content) { // 请求失败,调用,有几个重载方法

super.onFailure(error, content);

Log.d(TAG,"获取数据失败: " + error + content);

}


@Override

public void onFinish(String url) { // 请求结束调用

super.onFinish(url);

Log.d(TAG,"获取数据结束 url地址:" + url);

}


@Override

public void onStart(String url) { // 请求开始调用

super.onStart(url);

Log.d(TAG,"请求开始:" + url);

}


@Override

public void onSuccess(int statusCode, Header[] headers,

String content) { // 请求成功调用,有几个重载方法

super.onSuccess(statusCode, headers, content);

Log.d(TAG,"获取数据成功: " + content);

for (int i = 0; i < headers.length; i++) {

Log.d(TAG,"获取数据成功:headers数据 " + headers[i] +"");

}

textView.setText(content);

}

});



其它实用方法,详细请看官网说明

// 带参数的

//RequestParamsparams = new RequestParams();

// params.put("id", 1 + "");

//httpClient.get("",params, new HCKHttpResponseHandler() {

// });

//

//

// 返回一个JSONObject的

// httpClient.get("", new JsonHttpResponseHandler(){

// @Override

// public void onSuccess(int statusCode, JSONObject response) {

// super.onSuccess(statusCode, response);

// }

// });

//

//

// 带参数的返回一个JSONObject的

// httpClient.get("url",params, new JsonHttpResponseHandler(){

//

// });

//

//

// 请求头增加参数的

// httpClient.addHeader(header, value);

// 设置超时的

// httpClient.setTimeout(timeout);

// post方法

// httpClient.post("", new HCKHttpResponseHandler(){});



Demo下载地址,里面有开源项目老版本的源码:源码,代码,大家可以根据需求,自己修改源码,实现自己需要。源码里面增加了一个url参数,可以方便我们打印url,查看url参数是否正确(源代码没有返回url)。

记得加入访问网络的权限

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值