Реализовать ежедневное напоминание в моем приложении

Я хотел бы задать несколько вопросов и получить ваш совет относительно уведомления о напоминании, у меня нет опыта кодирования Java, и это моя первая попытка разработать приложение для Android. Прошу прощения, если мои вопросы дублируются.

Кратко о том, что мне нужно: в моем приложении у меня есть настройка, позволяющая пользователям устанавливать напоминания, и они могут выбирать, в какое время (из ListPreference) напоминать им ежедневно.

Итак, мой вопрос в том, какой из них я должен использовать

  1. AlarmManager - так же, как это Реализовать напоминание об уведомлении? Но у меня есть сомнения по этому поводу, если приложения не запущены (не открыты), будет ли напоминание все еще отправляться?
  2. Firebase Cloud Messaging — при использовании FCM, как мне запланировать и инициировать отправку push-уведомления для напоминания в определенное время конкретному пользователю?
  3. Любой другой простой метод?

Я пробовал этот метод -> Напишите функцию с nodejs, чтобы проверить изменение данных в Firebase, чтобы отправить уведомление в приложение; развернул nodejs в Firebase Function. Но дело в том, что я не знаю, как запланировать задание, чтобы постоянно изменять данные в firebase, это работает, когда я вручную ввожу данные. Я думаю, что это неправильный способ, не следует обращаться к базе данных только для того, чтобы реализовать простое ежедневное напоминание. Также это не рекомендуемый метод, верно?

Надеюсь, я получу простейший совет от всех вас. Спасибо


person user1397859    schedule 24.10.2017    source источник
comment
Пожалуйста, придумайте stackoverflow.com/help/mcve   -  person Kartik Shandilya    schedule 24.10.2017


Ответы (1)


Вы можете использовать AlarmManager для установки ежедневных напоминаний, но он не очень точен после уровня API 19 (Kitkat). И да, он будет работать, когда ваше приложение останавливается без проблем, но если ваш телефон перезагружается, вам нужно использовать широковещательный приемник, который срабатывает при перезагрузке телефона и снова поставить будильник.

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

person Unique Identifier    schedule 24.10.2017
comment
благодарю вас. Сейчас пробую Alarming manager. Но я столкнулся с другой проблемой. - person user1397859; 28.10.2017
comment
Проблема заключается в том, что после того, как я получаю сигнал уведомления, когда я нажимаю на это уведомление, снова принимается новый сигнал тревоги. Каждый раз, когда я нажимаю на уведомление, я получаю новое. - person user1397859; 28.10.2017