思路:连接Internet资源-->分析XML资源-->使用Download Manager下载文件

Android的Internet连接模型和用于分析Internet数据源的Java技术。

Android的Internet连接模型和用于分析Internet数据源的Java技术。

胖客户端和瘦客户端(完全依靠基于Web的解决方案)的本地应用程序的区别和优点:

1. 上述胖客户端指非原生的Android应用程序(或基于Web的应用程序);瘦客户端指原生Android应用程序(或本地应用程序,或者是基于Internet的应用程序)。或者两者相互对调定义,名字只是一个称呼而已,关键是角度如何;

2. 带宽:对于带宽有限的设备而言,比如图片、布局和声音这样的静态资源可能是非常昂贵的带宽消费者。通过创建一个本地应用程序,可以把带宽需求仅限于进行数据更改;

3. 缓存:使用基于浏览器的解决方案时,一个不稳定的Internet连接可能会导致不持续的应用程序可用性。本地应用程序可以在没有实时连接的情况下通过缓存数据和用户操作来提供尽可能多的功能,并且在当连接重新建立时,能够与云进行同步;

4. 降低电源消耗:应用程序每次打开一个指向服务器的连接时,无线设备会就打开(或者保持打开)。本地应用程序可以捆绑与网络的连接,从而将启动的连接数降到最低。网络请求间隔的时间越久,无线设备可以保持关闭的时间就越久。

5. 本地功能:Android设备不仅仅是能够运行浏览器的简单平台。通过创建一个本地应用程序,可以把那些联机可用的数据和设备上可用的硬件功能结合起来,从而提供更加丰富的用户体验。

通过限制传输的数据量来优化用户体验,并确保应用程序足够健壮,以处理网络中断和带宽限制。

连接网络--> 请求数据 --> 解析数据

使用Download Manager,作为一个Service来优化长时间下载操作的处理。建议,最好在大多数场景下都使用Download Manager来管理下载任务。通过使用上述实例,可以对某个下载进行进一步的操作或者查询,包括查看状态或者取消下载;可以对下载条件进行设置,比如:确保只有连接到WIFI时才进行大文件的下载;可以自定义使用Download Manager Notification显示当前下载的进度和文件名。

下载数据(需获取到一个连接)而不会耗尽电量的最佳实践:

下载数据时,使用的时机和技术会对电池寿命有显著的影响。移动设备的无线电处于激活状态时会消耗大量的电量;每当创建一个新的连接来下载其他的数据时,可能会将无线电设备从待机状态唤醒到激活状态。一般情况下,最好将连接和相关的下载绑定以同时且不频繁地执行它们。相反,创建频繁、短暂的连接来下载少量的数据,会对电池有最显著的影响。

Android应用程序如何使用Internet资源?的更多相关文章

  1. 我的Android 4 学习系列之使用 Internet 资源

    目录 连接Internet资源 分析XML资源 使用Download Manager下载文件 查询Download manager 使用Account Manager 对 Google App Eng ...

  2. Android应用程序资源的查找过程分析

    文章转载至CSDN社区罗升阳的安卓之旅,原文地址:http://blog.csdn.net/luoshengyang/article/details/8806798 我们知道,在Android系统中, ...

  3. Android应用程序资源的编译和打包过程分析

    文章转载至CSDN社区罗升阳的安卓之旅,原文地址:http://blog.csdn.net/luoshengyang/article/details/8744683 我们知道,在一个APK文件中,除了 ...

  4. (Android UI)Android应用程序中资源:图片、字符串、颜色、布局等

    Android系统设计采用代码和布局分离的设计模式,因此在设计Android应用程序时需要遵循该设计模式. “把非代码资源(如图片和字符串常量)和代码分离开来始终是一种很好的做法.”---<An ...

  5. 使用 Eclipse PhoneGap 构建 Android 应用程序入门

    Eclipse 是一种支持多种技术的开源集成开发环境 (IDE),但本文重点介绍 Java 支持,这也是 Android 应用程序的“母语”.Android 是 Google 发布的开源移动操作系统. ...

  6. 在Android应用程序使用YouTube API来嵌入视频

    在Android版YouTube播放器API使您可以将视频播放功能到你的Android应用程序.该API允许您加载和播放YouTube视频(和播放列表),并自定义和控制视频播放体验. 您可以加载或暗示 ...

  7. Android应用程序组件Content Provider应用实例

    文章转载至CSDN社区罗升阳的安卓之旅,原文地址:http://blog.csdn.net/luoshengyang/article/details/6950440 文简要介绍了Android应用程序 ...

  8. 与Android应用程序相关的文件目录都有哪些?(转载)

    与Android应用程序相关的文件目录都有哪些? | 浏览:1312 | 更新:2014-09-28 19:43 | 标签:android 一.方法介绍:   每个Android应用程序都可以通过Co ...

  9. android的程序运行数据存放在哪里?

    Android应用开发中,给我们提供了5种数据的存储方式1 使用SharedPreferences存储数据2 文件存储数据3 SQLite数据库存储数据4 使用ContentProvider存储数据5 ...

随机推荐

  1. DUMP 3.8 企业级电商项目 支付宝之类

    ① 沙箱登录:https://openhome.alipay.com/platform/appDaily.htm 获得一个 使用环境描述 APPID.授权回调地址.沙箱钱包哪里下载之类的 ② 沙箱环境 ...

  2. makefile 嵌套

    目录结构: dynamic 和 static 两个目录实现加法功能, 分别生成动态库和静态库,   main.c 主文件链接加法功能,  终端命令执行:   make dynamic=1  则编译动态 ...

  3. python epoll方式tcp连接回发消息

    # -*- coding:utf-8 -*- import socket import select class testserver(): def __init__(self): self.serv ...

  4. VS2013创建ASP.NET应用程序描述

    你的 ASP.NET 应用程序 恭喜! 你已创建了一个项目 此应用程序包含: 显示“主页”.“关于”和“联系方式”之间的基本导航的示例页 使用 Bootstrap 进行主题定位 身份验证,如果选择此项 ...

  5. 011_TCP专项研究监控

    (1)In Segs 数据源: /proc/net/snmp; 采集方式:累计值,每10秒采集一次取差值: 指标:net.snmp.tcp (key: system); In Segs: tcp协议层 ...

  6. Redis 和 I/O 多路复用

    最近在看 UNIX 网络编程并研究了一下 Redis 的实现,感觉 Redis 的源代码十分适合阅读和分析,其中 I/O 多路复用(mutiplexing)部分的实现非常干净和优雅,在这里想对这部分的 ...

  7. find your present (2) hdoj 2095

    /* author:谦智 find your present (2) hdoj 2095 法一:用暴力 法二:用map 法三: 符号是^. 异或是个位运算符号,具体是怎么操作的请百度,这里有个特性使得 ...

  8. Python爬虫基础之Cookie

    一.Cookie会话 简单地说,cookie就是存储在用户浏览器中的一小段文本文件.Cookies是纯文本形式,它们不包含任何可执行代码.一个Web页面或服务器告之浏览器来将这些信息存储并且基于一系列 ...

  9. php输出语句 echo print printf print_r var_dump sprintf

    php的几种输出方式: echo 常用的输出语句,例如:echo 'helloworld!'; print() 输出语句,有返回值.例如:print('helloworld!'); 输出成功返回1,失 ...

  10. mysql 5.7版本后时间datetime 默认为 0000-00-00 00:00:00 问题

    CREATE TABLE `test_user` ( `id` int(11) unsigned NOT NULL AUTO_INCREMENT, `name` char(25) DEFAULT '' ...