Android Диспетчер тревог не запускает тревогу при изменении времени устройства вручную - PullRequest
0 голосов
/ 13 января 2020

Я настроил будильник с помощью диспетчера тревог и для проверки изменил время устройства вручную. В это время тревога не срабатывает, но если мы подождем до того времени, она сработает. Есть ли лучший вариант для проверки тревоги?

Код настройки тревоги приведен ниже.

if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.M) {
            alarmManager.setExactAndAllowWhileIdle(
                AlarmManager.RTC_WAKEUP,
                total,
                operation
            )
        } else {
            alarmManager.setExact(
                AlarmManager.RTC_WAKEUP,
                total,
                operation
            )
        }

1 Ответ

0 голосов
/ 13 января 2020

Нет, это не будет вызвано AlarmManager. Поэтому вам следует прослушать действия по изменению времени и заново создать сигнал тревоги.

Эти действия

Intent.ACTION_TIME_TICK
Intent.ACTION_TIMEZONE_CHANGED
Intent.ACTION_TIME_CHANGED

Сохраняется ли Alarm Manager даже после перезагрузки? лучше ответьте, чтобы понять вашу проблему и решить ее.

Для лучшего понимания вы можете подписаться на Слушатель изменения даты и времени в Android?

...