黑马程序员技术交流社区
标题: 【开源项目】网络连接/URL访问的开源框架android-async-http-master [打印本页]
作者: Android_Robot 时间: 2016-5-5 09:46
标题: 【开源项目】网络连接/URL访问的开源框架android-async-http-master
本帖最后由 Android_Robot 于 2016-10-26 15:16 编辑
网络连接/URL访问的开源框架android-async-http-master
android-async-http-master,是Android的一个开源项目 ,这个网络请求库是基于Apache HttpClient库之上的一个异步网络请求处理库,网络处理均基于Android的非UI线程,通过回调方法处理请求结果。
其主要特征如下:
处理异步Http请求,并通过匿名内部类处理回调结果;
Http请求均位于非UI线程,不会阻塞UI操作;
通过线程池处理并发请求;
处理文件上传、下载;
响应结果自动打包JSON格式;
自动处理连接断开时请求重连;
1.下载【回帖可见】:
[/url]
2.导包:
a.导源码:将\library\src下的文件夹全部复制粘贴放入项目的src下
b.导JAR包:将\releases下的相应版本的jar包复制粘贴到项目的libs目录下
3.使用:
注意是异步的,不能放在子线程中使用。
GET:
在需要进行的网络连接的代码处:
1.对url地址进行url编码
2.创建客户端对象 new AsyncHttpClient();
3.调用get方法,须要2个参数,一是请求地址,二是实现一个“异步http响应处理器”的接口AsyncHttpResponseHandler;
4.覆盖接口中的onSuccess和onFailure方法
onSuccess(intstatusCode ,Header[] headers,byte[]responseBody){
}
onFailure(int statusCode, Header[] headers, byte[] responseBody, Throwable error)
参数都是服务器返回的响应体的关键内容:
int statusCode:响应的状态码
Header[] headers:响应头的内容
byte[]responseBody:响应体,返回的内容的正文,将之转化为所求/可见的数据
Throwable error:如果请求失败返回的抛出的异常
4.总结:
此包是异步的http网络连接,可以直接在AsyncHttpResponseHandler接口的回调函数中进行UI的更新,而不用将消息发送给主线程处理UI更新
onSuccess(…){findViewById(R.id.tv); tv.setText(“text”);}
Post:
流程基本相同,不过需要封装请求参数:
1.创建请求参数对象params,此类封装了一个HashMap<String,String>来存储kv对
new RequestParams();
2.向params添加键值对
params.put(“pwd”,pwd);
3.client对象调用post方法发送post请求
client.post(path,params,newAsyncHttpResponseHandler(){});
更详细的框架解析请移步:[url=http://bbs.itcast.cn/thread-87144-1-1.html]网络连接/URL访问的开源框架android-async-http-master
更多资源分享:
【强荐!】2016年最新Android学习路线图——按此路线图学习月薪过万{ 火速收入}
[持续更新]2016最新Android视频教程+源码+技巧/经验+软件+面试
Android应用层View绘制流程与源码分析
Andriod案例源码分享--Android_系统UI布局以及设计规则
送给老婆的小礼物 闹钟 备忘录 android源码
作者: picky张 时间: 2016-5-13 17:04
写谢谢谢,学习了
作者: 大大史莱姆 时间: 2016-8-28 00:08
感谢分享!!!
作者: 闫常国 时间: 2016-9-20 10:15
谢谢分享
作者: Gelivable 时间: 2017-2-3 00:28
网络连接/URL访问的开源框架android-async-http-master
作者: zz624 时间: 2017-5-1 08:39
感谢分享
作者: 2456935803 时间: 2018-10-17 12:00
32636363636
作者: baby14 时间: 2018-10-18 07:55
多谢分享
| 欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) |
黑马程序员IT技术论坛 X3.2 |