思路:连接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. jar包中File 文件找不到的异常分析与解决

    源链接: http://hxraid.iteye.com/blog/483115#comments 我们常常在代码中读取一些资源文件(比如图片,音乐,文本等等).在单独运行的时候这些简单的处理当然不会 ...

  2. luogu P5319 [BJOI2019]奥术神杖

    传送门 要求的东西带个根号,这玩意叫几何平均数,说到平均数,我们就能想到算术平均数(就是一般意义下的平均数),而这个东西是一堆数之积开根号,所以如果每个数取对数,那么乘法会变成加法,开根号变成除法,所 ...

  3. Laravel 5.7 使用 PHP artisan migrate 的问题

    这是由于Laravel 默认使用 utf8mb4 字符, 包括支持在数据库存储「 表情」 . 如果你正在运行的 MySQL release 版本低于5.7.7 或 MariaDB release版本低 ...

  4. 查询sql 索引

    SELECT indexname = a.name , tablename = c. name , indexcolumns = d .name , a .indidFROM sysindexes a ...

  5. TCP、UDP通信

    开放系统互连参考模型 (Open System Interconnect 简称OSI) OSI七层模型 1.应用层2.表示层3.会话层4.传输层5.网络层6.数据链路层7.物理层 TCP/IP模型1. ...

  6. php 进行跨域操作

    本地配置两个域名: http://www.concent.com   主域名 http://s.concent.com/       子域名 在主域名下添加跨域代码: ini_set('session ...

  7. 2018-2019-2 网络对抗技术 20165231 Exp2 后门原理与实践

    实验内容 1.使用netcat获取主机操作Shell,cron启动 2.使用socat获取主机操作Shell, 任务计划启动 3.使用MSF meterpreter(或其他软件)生成可执行文件,利用n ...

  8. core ML学习

    Core ML工具是一个Python包(coremltools),托管在Python包索引(PyPI)上. 从表格中可看出,支持caffe工具. 使用与模型的第三方工具相对应的Core ML转换器转换 ...

  9. .Net 入门资料推荐 (编辑中)

    1.首先推荐 网易云课堂上的一个付费课程:常老师带你学ASP.NET MVC ,价格199元 2. 一个.net的框架,ABP,中文介绍如下 http://www.cnblogs.com/farb/p ...

  10. SQLAlchemy+Flask-RESTful使用(一)

    前言 开新坑啦.最近打算自己开一个资源聚合网站.就用Flask. 当然也使用了 Flask-RESTful和SQLAlchemy啦 写的过程中遇到过很多坑/觉得比较有意义的就写在这里. 变更记录 # ...