15

三星设备(嗯,至少其中一些)将所有已安装的应用程序添加到“应用程序省电模式”列表中,这会影响后台服务侦听应用程序的一些关键信息。

某些应用程序在安装后以某种方式禁用此模式,无需任何额外步骤。三星线程上关于以编程方式禁用应用程序省电模式的评论表明,Facebook 和 WhatsApp 等应用程序可能在操作系统白名单中,但我已经看到不那么受欢迎的应用程序也在这样做。知道如何实现这一目标吗?

我试过使用ACTION_REQUEST_IGNORE_BATTERY_OPTIMIZATIONS意图但没有成功。PowerManager#isIgnoringBatteryOptimizations开始返回true,但应用程序省电模式和省电模式设置中的东西都没有为应用程序禁用。

如果您认为唯一的方法是联系三星将该应用列入白名单,那么最好的方法是在哪里?

此外,如果无法以编程方式禁用应用省电模式,有没有办法检测它是否已为应用启用,以便我可以打开应用并要求用户禁用它?

4

1 回答 1

0

您好,有两种省电模式:

  • 常规的安卓打盹模式,

  • 和自定义的“省电模式”。

对于打盹模式,动作:

Intent intent = new Intent(); intent.setAction((Settings.ACTION_REQUEST_IGNORE_BATTERY_OPTIMIZATIONS); intent.setData(Uri.parse("package:" + packageName))

并开始意图。

但是对于自定义省电模式(尤其是华为和其他一些),您必须根据供应商启动自定义省电模式意图。列表在这里: https ://stackoverflow.com/a/48641229/4606542

于 2018-02-13T09:56:30.427 回答