如何让我的Android应用程序出现在超省电模式下

一些三星设备具有超省电模式,可关闭wifi,转动屏幕灰度并限制几个基本应用的使用。

但它确实允许您添加一些可以使用的应用程序。 这些应用包括Facebook和WhatsApp。 如何让我的应用程序出现在此列表中? 我必须对应用程序进行哪些更改才能显示在此列表中? 或者此列表是否基于三星维护的白名单?

    可以使用权限REQUEST_IGNORE_BATTERY_OPTIMIZATIONS 。 此权限不需要明确的用户权限。 所以将被授予。 虽然这不会阻止用户手动停止应用程序。

    来自文档 :

    这是一个正常的权限:请求它的应用程序将始终被授予权限,而无需用户批准或查看它。

    ACTION_REQUEST_IGNORE_BATTERY_OPTIMIZATIONS将把应用程序放到设备的白名单中。

    isIgnoringBatteryOptimizations将通知您该应用是否已列入白名单。

    来自文档的一些注释:

    注意:大多数应用程序不应该使用它; 平台提供了许多设施,以便应用程序在各种省电模式下正常运行。 这仅适用于需要深度控制自身执行的exception应用,可能会牺牲用户的电池寿命。 请注意,这些应用程序极大地冒着向用户显示其设备上的高功率消费者的风险。

    输入:Intent的数据URI必须使用“package”方案指定要显示的应用程序包名称。 那就是“package:com.my.app”。

    这不是我建议滥用的东西。

    有一个白名单可接受用例列表。

    通常,除非Doze或App Standby破坏应用程序的核心function,否则您的应用不应位于白名单中,或者技术原因导致您的应用无法使用FCM高优先级消息。

    感谢adsamcik的最新链接。