思路:连接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. 查找修补文件差异diff、patch

    diff patch -p1 diff -Naur directory1 directory2

  2. c\c++里struct字节对齐规则

    规则一.: 每个成员变量在其结构体内的偏移量都是成员变量类型的大小的倍数.   规则二: 如果有嵌套结构体,那么内嵌结构体的第一个成员变量在外结构体中的偏移量,是内嵌结构体中那个数据类型大小最大的成员 ...

  3. 背景上实现阴影——linear-gradient

    /*从元素顶部有条阴影,两种方式,第二种更好,能控制阴影的宽度*/background-image: linear-gradient(0deg, rgba(226, 226, 226, 0) 97%, ...

  4. vue.js学习系列-第二篇

    一 VUE实例生命周期钩子     1 生命周期函数         定义 生命周期函数就是vue在某一时间点自动执行的函数 2 具体函数      1 new vue()      2 before ...

  5. Tomcat实现反向代理

    实验环境搭建: web server             Director: 192.168.11.131(host-only)     192.168.1.114(桥接)   安装好Apache ...

  6. mysql登录报错“Access denied for user 'root'@'localhost' (using password: YES”)的处理方法

    环境 CentosOS 6.5 ,已安装mysql 情景 root密码忘记,使用普通用户无法登录 解决 问题一 无法使用mysql命令 参考文章:https://www.cnblogs.com/com ...

  7. Mysql 反向解析 导致远程访问慢

    在云端部署了mysql后,发现远程连接的响应速度非常慢(3-10s) 但是在本地访问数据库却没有问题 经过一番google这才知道原来mysql默认会进行反向解析,即通过ip地址反向向ISP申请获取域 ...

  8. iOS cocoapods 速度过慢问题

    这个问题真的困扰了很久,虽然我也开了shadowsocks,但是我不知道git命令默认是不走shadowsocks的,所以速度慢的很. 今天拜读了 https://blog.csdn.net/wuqu ...

  9. docker简单介绍----Dockerfile命令

    DockerFile的组成部署: 下面优先介绍下Dcokerfile的基础指令 一.CMD指令:容器启动时要莫热门运行的命令,如果有多个CMD指定,最后一个生效 使用方法: CMD ["ex ...

  10. java 数组排序 插入排序法

    插入排序法思想:将n个数字分为前面几个是有序数字集合,后面几个为无序集合.当然尚未排序之前,可以将n0 看为有序数集合,N1-Nn-1 看为等待排序的无序集合.从N1开始将无序数一个一个插入到有序数集 ...