Firebase JobDispatcher vs Evernote Android Job – как эти два сравнения?

В настоящее время в Android для выполнения задачи периодически в зависимости от времени или любых других факторов, таких как состояние зарядки, состояние сети и т. Д., Основными тремя параметрами являются: Android AlarmManager (который работает периодически по времени) , GCMTaskService (требуется служба Google Play на устройстве ) И JobScheduler (требуется версия Android> 21) . Недавно я столкнулся с этими двумя библиотеками для планирования заданий, один из Firebase и один из Evernote.

Мой основной вопрос: как эти две библиотеки сравниваются? Каковы их сильные и слабые стороны?

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

Мой второстепенный вопрос: достаточно ли простого AlarmManager для этой цели, или я должен пойти на любую из этих двух библиотек?

Благодарю.

Solutions Collecting From Web of "Firebase JobDispatcher vs Evernote Android Job – как эти два сравнения?"

Как эти две библиотеки сравниваются? Каковы их сильные и слабые стороны?

В таблице Firebase JobDispatcher github есть таблица сравнения:

Введите описание изображения здесь

Ключевое различие заключается в присутствии сервисов Google Play: Firebase нуждается в устройстве для его установки, в то время как Evernote является независимым от Play Services.

Я хочу создать приложение, где пользователю напоминают о необходимости принимать лекарства через определенный промежуток времени. Был бы простой AlarmManager для этой цели, или я должен пойти на любую из этих двух библиотек?

Эмпирическое правило состоит в том, что, скорее всего, вам не понадобится AlarmManager , потому что это аккумуляторная батарея. Одна из ключевых особенностей диспетчеров заданий состоит в том, что они объединяют задания и выполняют их в одном окне, поэтому устройство не будет просыпаться слишком часто.

Вам лучше придерживаться диспетчеров заданий, если только медикаменты не должны иметь точное время, например будильник (например, вы хотите уведомить пользователя о том, чтобы принимать лекарство ровно через 3 часа).