写一个从网络上下载一张图片的例子,下面做个思路整理。
一、因为要访问网络资源,所以首先要添加网络权限
<uses-permission android:name="android.permission.INTERNET"/>二、创建URL对象
String strUrl = "http://192.168.1.100:8080/nice/a.jpg"; URL url = new URL (strUrl);三、打开URL,获取HttpURLConnection对象
conn = (HttpURLConnection) url.openConnection ();四、给HttpURLConnection对象设置请求方式,连接超时等
conn.setRequestMethod ("GET"); conn.setConnectTimeout (3000); conn.setReadTimeout (3000);五、获取响应码。
int responseCode = conn.getResponseCode ();六、如果请求码为200,则请求网络成功,否则失败。
七、如果网络请求成功,获取输入流,从流中得到请求的资源
InputStream is = conn.getInputStream (); Bitmap bitmap = BitmapFactory.decodeStream (is);八、因为访问网络是个耗时的操作,所以请求网络数据必须放在子线程中进行。
九、Android只能在主线程中更新UI,所以要使用Handler消息机制,更新UI。
Demo下载地址:点击打开链接