性能优化(五)Battery Historian 使用及数据分析和总结方案

本文介绍了如何使用Battery Historian进行电量分析,重点关注了WakeLock、GPS和网络连接的影响。提出了GPS优化建议,如使用省电模式和切换定位提供者,以及网络和WakeLock的优化方案,如加入电量优化白名单,使用JobScheduler合理调度任务,以减少电量消耗。
摘要由CSDN通过智能技术生成

Battery Historian 使用及数据分析

adb 对手机的操作

1.重置内部数据,相当于清空

adb shell dumpsys batterystats --reset

2.获取完整的 wakelock 信息

adb shell dumpsys batterystats --enable full-wake-history

3.拔掉 USB 等待一段时间建议长一点,现在随意使用 APP
4.获得电量报告

// > 6.0
adb bugreport bugreport.zip
// <= 6.0
adb bugreport > bugreport.txt

5.提交电量报告,并查看
在这里插入图片描述
数据参数详细说明
1.WakeLock 级别

  • PARTIAL_WAKE_LOCK: 保证 CPU 保持高性能运行,而屏幕和键盘背光(也可能是触摸按键的背光)关闭。一般情况下都会使用这个WakeLock 。
  • ACQUIRE_CAUSES_WAKEUP: 这个WakeLock除了会使 CPU。高性能运行外还会导致屏幕亮起,即使屏幕原先处于关闭的状态下。
  • ON_AFTER_RELEASE: 如果释放 WakeLock 的时候屏幕处于亮着的状态,则在释放WakeLock之后让屏幕再保持亮一小会。如果释放 WakeLock 的时候屏幕本身就没亮,则不会有动作。
  • API17 被弃用的 WakeLock:保持屏幕长亮

SCREEN_DIM_WAKE_LOCK:保证屏幕亮起,但是亮度可能比较低。同时键盘背光也可以不亮。

SCREEN_BRIGHT_WAKE_LOCK :保证屏幕全亮,同时键盘背光也亮。

FULL_WAKE_LOCK:表现和SCREEN_BRIGHT_WAKE_LOCK 类似,但是区别在于这个等级的WakeLock使用的是最高亮度

推荐使用

 //在Activity中:
getWindow().addFlags(WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON);

//或者在布局中添加这个属性:
android:keepScreenOn="true"

剩下参数由表格说明
在这里插入图片描述

  • 1
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值