兔子--android电量

在09年Google IO大会Jeffrey Sharkey的演讲(Coding for Life — Battery Life, That Is)
 中就探讨了这个问题,指出android应用的耗电主要在以下三个方面:

大数据量的传输。


不停的在网络间切换


解析大量的文本数据。


      并提出了相关的优化建议:
  在需要网络连接的程序中,首先检查网络连接是否正常,如果没有网络连接,那么就不需要执行相应的程序。
  使用效率高的数据格式和解析方法,推荐使用JSON和Protobuf。
  目在进行大数据量下载时,尽量使用GZIP方式下载。
  其它:回收java对象,特别是较大的java对像,使用reset方法;对定位要求不是太高的话尽量不要使用GPS定位,
  可能使用wifi和移动网络cell定位即可;尽量不要使用浮点运算;获取屏幕尺寸等信息可以使用缓存技术,不需要进行多次请求;
  使用AlarmManager来定时启动服务替代使用sleep方式的定时任务。
  作为app开发者,或许很少有人会注意app对电量的损耗,但是用户对电量可是很敏感的,app做好电量损耗的优化会为自己的app加分不少。
如果是一个好的负责任的开发者,就应该限制app对电量的影响,当没有网络连接的时候,禁用后台服务更新,
当电池电量低的时候减少更新的频率,确保自己的app对电池的影响降到最低。
当电池充电或者电量比较饱和时,可以最大限度的发挥app的刷新率



CPU被唤醒的次数越多,耗电量会越大。现在很多应用为了维持心跳、拉取数据、主动PUSH会不同程度地注册alarm服务,
导致Android系统被频繁唤醒。
这就是为什么雷军说Android手机在安装了TOP100的应用后,待机时间会大大缩短的重要原因。

郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。