1电量优化介绍及方案选择
正确认识
电量重视度不够:开发中一直连接着手机
电量消耗线上难以量化
方案介绍
1设置--》耗电排行
直观但没有详细数据,对解决问题没有太大帮助
找特定场景专项测试
2ACTION_BATTERY_CHANGER
获取电池电量、充电状态、电池状态等信息
实践:
价值不大:针对整体耗电量,而非单个App
实时性差,精确度低,只能等系统通知
3Battery Historian
Google推出的Android系统电量分析工具
支持5.0(api21)及以上系统电量分析
功能强大,推荐使用
可视化展示:好点比例。执行时间、次数
适合线下使用
测试相关
2.png2Battery 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界面相关
离开界面后停止相关活动
耗电操作判断前后台
WakeLock相关
17.pngJobScheduler
18.png 19.png 20.png 21.png5电量优化模拟面试
1怎么做电量测试
相对难做,只能在线下拿到之鞥增加多维监控
分场景逐个突破--不精确
Battery Historian--精确+丰富 获取耗电组件:GPS、蓝牙、App(只能线下使用)
辅助监控:耗电组件访问次数、等监控
2有哪些有效电量优化手段
网络相关--时机次数,批量发送;压缩
传感器相关:谨慎选择模式,避免高精度模式,注意释放
WakeLock 与JobScheduler
网友评论