Java SetExactAndAllowHileId不唤醒设备

Java SetExactAndAllowHileId不唤醒设备,java,android,alarmmanager,Java,Android,Alarmmanager,因此,我有一个警报,当触发时,它会显示通知,并在下一个小时使用setExactAndAllowHileidle设置相同的警报,但在夜间,如在成功触发警报后的凌晨1点、凌晨2点,然后在凌晨3点,警报不会触发,当然,它不会在下一个小时显示,因为它没有设置新的警报。当我在早上8:15唤醒设备时,它会触发此警报 Android 7.0,在华为P9上测试,华为有一种叫做受保护的应用程序,可以通过手机设置(电池管理器>受保护的应用程序)访问。请尝试将您的应用程序添加到此列表中,以便在屏幕关闭后保持其运行。将

因此,我有一个警报,当触发时,它会显示通知,并在下一个小时使用
setExactAndAllowHileidle
设置相同的警报,但在夜间,如在成功触发警报后的凌晨1点、凌晨2点,然后在凌晨3点,警报不会触发,当然,它不会在下一个小时显示,因为它没有设置新的警报。当我在早上8:15唤醒设备时,它会触发此警报


Android 7.0,在华为P9上测试,华为有一种叫做受保护的应用程序,可以通过手机设置(电池管理器>受保护的应用程序)访问。请尝试将您的应用程序添加到此列表中,以便在屏幕关闭后保持其运行。

将您的代码粘贴到问题中可能是Doze造成的。检查,但据说SetExactAndAllowHileidle即使在打瞌睡模式下也能工作,但不知何故它不可能复制