Google 致力于为黑人社区推动种族平等。查看具体举措

测试电量相关问题

Android 9(API 级别 28)中发布的电源管理功能会影响在此版本上运行的所有应用,无论这些应用是否以此版本为目标平台。务必要确保您的应用在这些设备上运行正常。

请务必在各种条件下测试应用的主要用例,了解电源管理功能如何彼此互动。您可以使用 Android 调试桥命令开启和关闭部分功能。

Android 调试桥命令

您可以使用 Android 调试桥 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