gpt4 book ai didi

Android AlarmManager - ELAPSED_REALTIME 闹钟在 sleep 时继续重复

转载 作者:行者123 更新时间:2023-11-30 03:16:01 27 4
gpt4 key购买 nike

我在 Nexus 4 - Android 4.3 - api_18 上工作。

当我安排 PendingIntent使用 AlarmManager.ELAPSED_REALTIME ,警报继续调用我的 BroadcastReceiver当设备处于 sleep 模式时。

文档说当设备进入休眠状态时,BroadcastReceiver仅调用一次,然后在设备唤醒时调用:

If it goes off while the device is asleep, it will not be delivered until the next time the device wakes up.

就我而言,BroadcastReceiver在设备休眠时重复调用。

我的代码

alarmManager.setRepeating(AlarmManager.ELAPSED_REALTIME, 
SystemClock.elapsedRealtime(),
DELAI_PLANNIF_TICK,
pendingIntent);

最佳答案

当您关闭屏幕时,Android 不处于 sleep 模式。它要去那里,这个过程可能需要几秒钟以上。某些应用可能会获得 WakeLock 并在屏幕关闭时继续执行任务(例如播放音频)。我的猜测是您的设备未处于 sleep 模式,而您 BroadcastReceiver 的行为符合预期。如果您不使用 PowerManager,那么您不必担心会阻止设备进入休眠状态。如果您的应用需要在用户不与设备交互时停止执行,最好处理事件屏幕。

关于Android AlarmManager - ELAPSED_REALTIME 闹钟在 sleep 时继续重复,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20126449/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com