Подтвердить что ты не робот

Как неточно установитьInexactRepeating() для AlarmManager?

Итак, здесь сделка... Я должен заставить замолчать пользовательский телефон, когда у него есть класс. Поэтому мне нужен будильник, чтобы ежедневно уходить в определенное время, для каждого класса.

Поэтому я думаю, что у каждого класса есть своя тревога (интервал установлен на день). И телефон отключен, если класс находится в сеансе текущего дня.

Вот мой текущий код:

am.setInexactRepeating(AlarmManager.RTC_WAKEUP, startTime, 
                       DAY_IN_MILLISECONDS, start);

Будет ли setInexactRepeating() быть достаточно точным, чтобы отключить телефон в течение нескольких минут в течение одного интервала?

4b9b3361

Ответ 1

Возможно, нет, особенно если это интервал целого дня.

В документации :

Первый триггер тревоги не будет раньше запрошенного времени, но он может не произойти почти через полный интервал после этого времени. Кроме того, в то время как общий период повторяющегося сигнала тревоги будет запрошен, время между любыми двумя последовательными сигналами тревоги может отличаться. Если ваше приложение требует очень низкого джиттера, используйте setRepeating (int, long, long, PendingIntent).