Chendd's Blog

世界上没有什么事情是一行代码不能解决的。如果有,那就两行。

如何优化手机电量

       通过电量的计算公式我们可以看到影响电量的因子无非就是CPU的时间和网络数据以及Wakelock,GPS的使用。 在09年Google IO大会Jeffrey Sharkey的演讲(Coding for Life — Battery Life, That Is)中就探讨了这个问题,指出android应用的耗电主要在以下三个方面:

  • 大数据量的传输。
  • 不停的在网络间切换。
  • 解析大量的文本数据。

       并提出了相关的优化建议: 在需要网络连接的程序中,首先检查网络连接是否正常,如果没有网络连接,那么就不需要执行相应的程序。 使用效率高的数据格式和解析方法,推荐使用JSON和Protobuf。 目在进行大数据量下载时,尽量使用GZIP方式下载。 其它:回收java对象,特别是较大的java对像,使用reset方法;对定位要求不是太高的话尽量不要使用GPS定位,可能使用wifi和移动网络cell定位即可;尽量不要使用浮点运算;获取屏幕尺寸等信息可以使用缓存技术,不需要进行多次请求;使用AlarmManager来定时启动服务替代使用sleep方式的定时任务。

Comments