首页 > 其他 > 详细

下载练习——20140220

时间:2014-03-28 12:18:24      阅读:340      评论:0      收藏:0      [点我收藏+]

这篇东西拖了一个多月才动手写,其实已经学得更加深入了,不过作为学习记录,还是将它贴出来。

功能方面是一个很简单的下载模块,打开应用先下载json文件,通过json中的图片地址去下载图片,最终显示在ListView上。

下面是一个做此模块时写的一个思维导图bubuko.com,布布扣

图片已经蛮详细的了,那时第一次练ListView+AsynTask,做起来还是费了一些功夫的。

现在对于这两块已经练得很多,做起来也都熟练很多。

一个可以优化的地方是需要考虑到图片和Json文件都是从服务器来的,可能会发生各种意想不到的问题,如遇到问题时,需要给用户个提示,并跳出异步子线程

bubuko.com,布布扣
 1 public static String getStringFromHttp(String urlAddr)
 2 {
 3         InputStream is = null;
 4         ByteArrayBuffer byteArrayBuffer = new ByteArrayBuffer(1);
 5         try
 6         {
 7             URL url = new URL(urlAddr);
 8             HttpURLConnection conn = (HttpURLConnection) url.openConnection();
 9             if (conn.getResponseCode() != HttpURLConnection.HTTP_OK)
10             {
11                 //连接服务器有异常,给用户提示
12                 return null;
13             }
14             is = conn.getInputStream();
15             int len = 0;
16             byte[] buffer = new byte[1024];
17             while ((len = is.read(buffer)) != -1)
18             {
19                 byteArrayBuffer.append(buffer, 0, len);
20             }
21         }
22         catch (MalformedURLException e)
23         {
24             e.printStackTrace();
25         }
26         catch (IOException e)
27         {
28             e.printStackTrace();
29         }
30         finally
31         {
32             if (is != null)
33             {
34                 try
35                 {
36                     is.close();
37                 }
38                 catch (IOException e)
39                 {
40                     e.printStackTrace();
41                 }
42             }
43         }
44         return new String(byteArrayBuffer.toByteArray());
45 }
bubuko.com,布布扣

这个是已经封装后的获取String的异步加载任务的doInBackground方法。

去判断是否有成功连接服务器。

下载练习——20140220,布布扣,bubuko.com

下载练习——20140220

原文:http://www.cnblogs.com/To-Be-Better/p/3629310.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!