setAlarmClock / setExactAndAllowWhileIdle不准确

时间:2018-09-02 08:23:13

标签: android

所以,我正在尝试构建一个闹钟应用,
但是将其设置为精确度时会遇到一些问题。
闹钟不会总是发出警报,
但有时会在几分钟后消失。

我设置警报的代码:

when {
        Build.VERSION.SDK_INT >= Build.VERSION_CODES.M ->
            alarmManager.setAlarmClock(AlarmManager.AlarmClockInfo(alarmTime.timeInMillis, pendingIntent),
                    pendingIntent)

        Build.VERSION.SDK_INT >= Build.VERSION_CODES.KITKAT ->
            alarmManager.setExact(AlarmManager.RTC_WAKEUP,
                    alarmTime.timeInMillis,
                    pendingIntent)

        else ->
            alarmManager.set(AlarmManager.RTC_WAKEUP,
                    alarmTime.timeInMillis,
                    pendingIntent)
    }

(alarmTime =保存警报时间的calander实例)
(我还尝试使用setExactAndAllowWhileIdle代替setAlarmClock,
但我遇到了同样的问题)

感谢您的帮助。

p.s
例如,今天我将其设置为在10:00、10:20、10:40,
在正确的时间发射了前2次,
但是10:40直到我10:43打开屏幕后才开始播放。
(我正在运行api 23,并且手机可能在打ze中)

0 个答案:

没有答案