【官网翻译】性能篇(五)为电池寿命做优化——测试电源相关的问题

前言

       本文翻译自“为电池寿命做优化”系列文档中的最后一篇,主要介绍了测试电量相关的问题的adb命令。

       中国版官网原文地址为:https://developer.android.google.cn/topic/performance/power/test-power

       路径为:Android Developers > Docs > 指南 > Best practies > Performance > Optimize for battery life > Testing power-related issues

 

       发布于Android9(API等级为28)的电源管理特性影响了所有运行于该版本的应用,无论这些应用的目标版本是否为该版本。确保您应用在设备上恰当地运行是一件重要的事。

       确保在各种条件下测试您应用的主要使用情况,来查看电源管理特性是如何与其它应用相互作用的。您可以使用【Android Debug Bridge】命令来开启和关闭一些特性。

       

Android Debug Bridge 命令

       您可以使用【Android Debug Bridge】shell命令来测试几种电源管理特性。

       关于使用ADB将您设备置于低电耗模式的信息,请查看【使用低电量模式和应用群组模式测试】。

       应用待机群组

       您可以使用ADB来手动分配您的应用到应用待机群组。为了改变应用的群组,首先使用如下命令模拟拔除设备:

$ adb shell dumpsys battery unplug

       然后使用如下命令:

$ adb shell am set-standby-bucket packagename active|working_set|frequent|rare

       您也可以使用如下命令一次设置多个包:

$ adb shell am set-standby-bucket package1 bucket1 package2 bucket2...

       要检查应用在哪个群组,请运行

$ adb shell am get-standby-bucket [packagename]

       如果您不传入packagename参数,该命令会列出所有应用的群组。应用也可以通过调用新方法UsageStatsManager.getAppStandbyBucket()找出它在运行时的群组。

       后台限制

       要手动应用后台限制,运行如下命令:

$ adb shell cmd appops set packagename RUN_ANY_IN_BACKGROUND ignore

       要移除后台限制,运行如下命令:

$ adb shell cmd appops set packagename RUN_ANY_IN_BACKGROUND allow

       电池节省器

       有几个命令来测试您的应用在低电量条件下是如何表现的。

★ 注意:您也可以使用设备“设置” > “电池节省器”界面来将设备置于电池节省模式。

       要模拟设备被拔除,使用命令:

$ adb shell dumpsys battery unplug

       要测试低电量条件下设备如何表现,使用命令:

$ adb shell settings put global low_power 1

       一旦您测试完成,您应该通过如下命令撤销手动的设备设置:

$ adb shell dumpsys battery reset

 

该系列其它文档

对低电耗模式和应用待机模式进行针对性优化】:https://developer.android.google.cn/training/monitoring-device-state/doze-standby

监控电池电量和充电状态】:https://developer.android.google.cn/training/monitoring-device-state/battery-monitoring

确定和监控插接状态和基座类型】:https://developer.android.google.cn/training/monitoring-device-state/docking-monitoring

确定和监控连接状态】:https://developer.android.google.cn/training/monitoring-device-state/connectivity-monitoring

 

结语

       本文最大限度保持原文的意思,由于笔者水平有限,若有翻译不准确或不妥当的地方,请指正,谢谢!

posted @ 2019-04-18 15:39  宋者为王  阅读(1185)  评论(0编辑  收藏  举报