胡凯

Android Training - 记住用户的信息(Lesson 1 - 使用AccountManager来记录用户)

| Comments

章节概览:Remembering Users

Android用户希望把自己的信息绑定到喜欢的app与设备上,那么使得你的程序更加令人喜爱的一个方法是使得它更加的人性化。Android设备知道你的使用者是谁,他们都使用过哪些服务,在哪里存储了你的数据。在得到你的用户授权的前提下,你可以使用那些信息来使得你的app更加丰富,更加人性化。

在这一章节,你将学习到鉴定用户信息的多种技术,你可以:

  • 通过记住用户账户名来人性化你的appd。
  • 鉴定用户以确保是否是那个人。
  • 通过service来获取访问用户线上数据的权限,例如Google APIs。
  • 增加一个自定义的账户来鉴定自己后台的服务。

Android Training - 优化下载效率(Lesson 3 - 使用缓存来避免重复下载)

| Comments

Redundant Downloads are Redundant[重复下载是冗余的]

减少下载的最基本方法是仅仅下载那些你需要的。从数据的角度看,我们可以通过传递类似上次更新时间这样的参数来制定查询数据的条件。同样,在下载图片的时候,server那边最好能够减少图片的大小,而不是让我们下载完整大小的图片。

1.Cache Files Locally[缓存文件到本地]

避免下载重复的数据是很重要的。可以使用缓存机制来处理这个问题。缓存static的资源,例如完整的图片。这些缓存的资源需要分开存放。为了保证app不会因为缓存而导致显示的是旧数据,请从缓存中获取最新的数据,当数据过期的时候,会提示进行刷新。

Android Training - 优化下载效率(Lesson 2 - 调整更新的频率[C2DM与退避算法])

| Comments

Minimizing the Effect of Regular Updates[最小化定期更新操作的副作用]

最佳的定时更新频率是不确定的,通常由设备状态,网络连接状态,用户行为与用户定义明确的偏好而决定。

Optimizing Battery Life这一章有讨论如何根据设备状态来修改更新频率。里面介绍了当断开网络连接的时候去关闭后台服务,在电量比较低的时候减少更新的频率。

这一课会介绍更新频率是多少才会使得更新操作对无线电状态机的影响最小。(C2DM与指数退避算法的使用)

Use Google Cloud Messaging as an Alternative to Polling[使用C2DM作为轮询方式之一]

关于Android Cloud to Device Messaging (C2DM)详情 ,请参考:http://code.google.com/intl/zh-CN/android/c2dm/

Android Training - 优化下载效率(Lesson 4 - 根据网络类型来切换下载模式)

| Comments

Modifying your Download Patterns Based on the Connectivity Type

并不是所有的网络类型(Wi-Fi,3G,2G,etc)对电量的消耗是同等的。不仅仅Wi-Fi电波比无线电波消耗的电量要少很多,而且不同的无线电波(3G,2G,LTE……)也存在使用不同电量的区别。

1.Use Wi-Fi[使用Wi-Fi]

在大多数情况下,Wi-Fi电波会在使用相对较低的电量的情况下提供一个相对较大的带宽。因此,我们需要努力争取尽量使用Wi-Fi来传递数据。 我们可以使用Broadcast Receiver来监听当网络连接切换为Wi-Fi,这个时候我们可以进行大量的数据传递操作,例如下载,执行定时的更新操作,甚至是在这个时候加大更新的频率。这些内容都可以在前面的课程中找到。