Мне нужно выполнить код с интервалами, иногда 10 секунд, иногда 5 минут. Код должен быть выполнен на точных 10 секунд от начала, а затем в точных 5 минут и 10 секунд от начала и т.д.
хронометра тиканье вдоль находится с самого начала, так что время исполнение должно быть точным.Выполнить код в определенное время: Обработчик? AlarmManager?
Использование Handler.postDelayed
не работает, потому что код для выполнения может занять некоторое время. Следующее выполнение кода может быть запоздалым, когда это произойдет.
Когда я хотел реализовать AlarmManager
, я увидел записку
Сигнал тревоги менеджер предназначен для случаев, когда вы хотите, чтобы ваш код запуска приложения в определенное время, даже если ваше приложение не в настоящее время работает. Для обычных операций синхронизации (тики, таймауты, и т. Д.) Проще и эффективнее использовать Handler.
Итак, я немного смущен, как мне это сделать, чтобы гарантировать правильное выполнение?