Этот вопрос, вероятно, задавался тысячу раз, но, пожалуйста, не отмечайте его как дубликат. Я просмотрел каждый вопрос / форум / совет / документацию, доступный онлайн в Alarm Manager и Jobscheduler, но до сих пор не могу заставить их работать последовательно в указанное время. Либо ответы на другие вопросы очень старые, более не применимы или недостаточны.
Вариант использования: Предоставить уведомление о следующем собрании в Календаре;Напоминание пользователя в X время, чтобы сделать что-то;В X раз найдите местоположение пользователя для запуска службы (например, домашней автоматизации, когда пользователь находится рядом с домом, происходит XYZ).
Что я пробовал: Jobscheduler: Это работает хорошо, за исключением случаев, когда приложение переходит в DozeРежим. Для этого я использовал Alarm Manager.
AlarmManager: я попробовал все методы один за другим, начиная с setAlarmClock (), setExactAndAllowWhileIdle (), setExact (). Все они работают, за исключением случаев, когда устройство переходит в режим ожидания.
Основная проблема заключается в том, что большинство из них не работают даже в течение часа после установленного времени (тестирование на Android Q / 10). Это так неточно, как работают другие приложения? Например, такие приложения, как Календарь, Uber и т. Д .?
Я должен что-то упустить.