网络编程

Handler消息机制
使用Hander的一般步骤
1.创建handler成员变量对象,并重写其handleMessage()
2.在分/主线程创建Message对象
3.使用handler对象发送Message
4.在handleMessage()中处理消息
为了方便子线程中对ui进行操作,安卓提供了一些好用的工具类,asynctask就是其中之一,借助asynctask,可以十分简单的从子线程切换到主线程他的原理也是基于异步消息处理机制
1)创建一个URL对象
URL url = new URL(http://www.baidu.com);
2)利用HttpURLConnection对象从网络中获取网页数据
HttpURLConnection conn = (HttpURLConnection) url.openConnection();
3)设置连接超时
conn.setConnectTimeout(6*1000);
4)对响应码进行判断
if (conn.getResponseCode() != 200) //从Internet获取网页,发送请求,将网页以流的形式读回来
throw new RuntimeException(“请求url失败”);
5)得到网络返回的输入流
InputStream is = conn.getInputStream();
6)String result = readData(is, “GBK”); //文件流输入出文件用outStream.write
7)conn.disconnect();
是一个抽象类,他有三个广泛形参数
params:执行异步任务时需要传入参数,用于后台任务中使用
progress:后台任务执行时,如果需要在界面上显现当前进度,则使用该参数作为进度单位
result:当任务执行完毕后,如果需要对结果进行返回时,则使用该参数作为返回值类型

上一篇:Android网络连线之HttpURLConnection【从网页获取图片 demo】


下一篇:HttpURLConnection和okhttp的使用