电量优化

2021-03-25  本文已影响0人  flynnny

1电量优化介绍及方案选择

正确认识

电量重视度不够:开发中一直连接着手机
电量消耗线上难以量化

方案介绍

1设置--》耗电排行
直观但没有详细数据,对解决问题没有太大帮助
找特定场景专项测试

2ACTION_BATTERY_CHANGER
获取电池电量、充电状态、电池状态等信息
实践:

1.png

价值不大:针对整体耗电量,而非单个App
实时性差,精确度低,只能等系统通知

3Battery Historian
Google推出的Android系统电量分析工具
支持5.0(api21)及以上系统电量分析

功能强大,推荐使用
可视化展示:好点比例。执行时间、次数
适合线下使用

测试相关

2.png

2Battery Historian实战分析

3.png 4.png 5.png

备用网站需要翻墙

实测

6.png 7.png 8.png

右下角可选择Application

3电量辅助监控实战

运行时能耗 都存在power_profile中

9.png 10.png

可以获知在哪些模块耗电最高

4电量优化套路总结

CPU时间片优化

获取运行过程线程CPU消耗,定位CPU占有率异常方法
减少后台应用的主动运行

网络相关

请求时机及次数控制
数据压缩,减少时间
禁止使用轮巡功能

定位相关

根据场景谨慎选择定位模式
考虑网络定位替代GPS
使用后务必及时关闭,减少更新频率

高德地图:

14.png 15.png

界面相关

离开界面后停止相关活动
耗电操作判断前后台

16.png

WakeLock相关

17.png

JobScheduler

18.png 19.png 20.png 21.png

5电量优化模拟面试

1怎么做电量测试
相对难做,只能在线下拿到之鞥增加多维监控
分场景逐个突破--不精确
Battery Historian--精确+丰富 获取耗电组件:GPS、蓝牙、App(只能线下使用)
辅助监控:耗电组件访问次数、等监控

2有哪些有效电量优化手段
网络相关--时机次数,批量发送;压缩
传感器相关:谨慎选择模式,避免高精度模式,注意释放
WakeLock 与JobScheduler

上一篇下一篇

猜你喜欢

热点阅读