Я работаю над приложением ToDo. Один пользователь может выбрать дату напоминания для любой задачи, и мое приложение сможет отображать уведомление на дату, которую пользователь выбрал для напоминания. Я провел исследование по этому вопросу. Я обнаружил, что могу использовать AlarmManager, PendingIntent, WorkManager и т. д. Но я не знаю, какой способ лучше. Можете ли вы дать мне представление, какой метод я должен использовать?
Как лучше всего показать уведомление в определенное время в Android?
Ответы (1)
Чтобы выбрать правильное решение для вашего проекта, вам необходимо подумать над следующими тремя вопросами:
Можно ли отложить работу или ее нужно выполнить немедленно? Например, если вам нужно получить какие-то данные из сети в ответ на нажатие пользователем кнопки, эта работа должна быть выполнена правильно. прочь. Однако, если вы хотите загрузить свои журналы на сервер, эту работу можно отложить, не влияя на производительность вашего приложения или ожидания пользователей.
Зависит ли работа от состояния системы? Возможно, вы захотите, чтобы ваше задание выполнялось только тогда, когда устройство соответствует определенным условиям, например подключено к источнику питания, подключено к Интернету и т. д. Например, вашему приложению может периодически требоваться сжатие сохраненных данных. Чтобы не влиять на пользователя, вы бы хотели, чтобы это задание выполнялось только тогда, когда устройство заряжается и находится в режиме ожидания.
Должно ли задание выполняться в точное время? Приложение-календарь может позволить пользователю настроить напоминание о событии в определенное время. Пользователь ожидает увидеть напоминание в нужное время. В других случаях приложению может быть все равно, когда именно выполняется задание. У приложения могут быть общие требования, например, сначала должно выполняться задание A, затем задание B, а затем задание C, но оно не требует, чтобы задания выполнялись в определенное время.
(источник)