【编者按】本文作者为来自南非约翰内斯堡的女程序员 Rebecca Franks,Rebecca 热衷于安卓开发,拥有4年安卓应用开发经验。有点完美主义者,喜爱美食。
本文系国内ITOM管理平台 OneAPM 编译呈现,以下为正文。
开发安卓应用可以说是一项艰难而且让人气馁的任务。你需要考虑的事情太多,而应用的电池使用情况似乎也不是排名靠前的考虑因素。然而,它却是你最应该花心思的事情之一。如果你的应用太过耗电而将用户的手机瞬间变成一块砖头,那么用户卸掉应用并且再不回头的概率相当之高。就如下面的这个例子:
【用户评论】耗电大..这个应用耗电太快了。就那么一次我忘了关它,它就给我的大腿来了个三星标志的纹身!我的手机就像着火了一样,拜托各位,你们能搞出比这更好的应用…我还是喜欢你的。
很明显,这个APP并没有让用户满意。在本文中,我们将会了解一下Battery Historian这个工具,并给大家一些避免过快消耗手机电量的建议。
Battery Historian是什么?
Battery Historian是一个能够以HTML形式展示用户电池使用信息的工具。通过提供下面所示的这些信息,该工具能协助你分析电池的使用情况:
- 哪些 APP 在前台运行
- 哪些应用需要唤醒锁,以及手机相应的清醒时间
- 无线广播的使用时间
- GPS的活跃时间
如何使用Battery Historian?
按照Github页面上的指示安装battery historian。
打开你的机器并在终端运行adb bugreport>bugreport.txt
。这会花费几分钟的时间。
运行battery historian。在浏览器中打开“localhost:9999”并选择bugreport.txt。然后会看到battery historian的结果。
Battery Historian 2.0版图表
在该图中,你能够看到电池水平和使用时间。它还强调了手机是否处于休眠模式,充电状态以及其他信息。从图中可以看出我的设备的电池状态将从早上七点的100%降至晚上十二点的10%左右。
应用状态标签
如果选择你的应用,它同时还能展示该应用的(电池使用)信息,以便查看该应用的性能表现。跳到“App Stats”标签,然后从下拉列表中选择你想查看的应用即可。你能看到诸如应用运行时间,数据使用情况等更多信息。
该工具对于了解应用使用的资源及在不使用应用时其后台运行的时间很有帮助。
降低安卓应用电能消耗的一些建议
- 尽可能地避免唤醒锁。
- 批量操作以避免频繁地唤醒设备。
- 将不重要的操作放在用户充电或已经连接至WiFi的时候。分析和记录之类的操作不需要实时进行。
- 非万不得已不要下载数据。在使用手机数据或WiFi时尝试调整询问语句。
- 后台运行时选用设备内置功能——例如使用JobScheduler
API或SyncAdapters在需要的时候同步内容。 - 移除不需要的后台进程。
- 在一台低电量的设备上测试应用来察看其电池消耗情况。
- 注意位置更新。你的请求命令越多,消耗的电能也就越多。点击此处进一步了解。
- 加入Android Performance Patterns Google
Plus(G+安卓性能模式)社区,阅读改进电池使用[官方文档(http://developer.android.com/training/monitoring-device-state/index.html)。 - 使用 OneAPM Mobile Insight 产品,深度监控应用健康状况。
OneAPM Mobile Insight 以真实用户体验为度量标准进行 Crash 分析,监控网络请求及网络错误,提升用户留存。访问 OneAPM 官方网站感受更多应用性能优化体验,想阅读更多技术文章,请访问 OneAPM 官方技术博客。
本文转自 OneAPM 官方博客
原文地址:http://riggaroo.co.za/understanding-battery-usage-android-app