Лучший подход для достижения гарантированной повторяющейся фоновой работы Android - PullRequest
0 голосов
/ 12 декабря 2018

Я нахожусь в процессе разработки приложения, которое в основном будет просто выполнять фоновую работу для считывания данных с соседнего датчика BLE (Bluetooth Low Energy) каждые 15 минут (если Bluetooth не включен, ему потребуетсяпредложить пользователю включить его из фоновой службы) и синхронизировать данные на сервере один раз в день.Я не уверен, какой подход лучше всего подходит для фоновой работы, так как мне нужно гарантировать своевременное выполнение фоновых задач, поскольку это очень важно для цели приложения.

Я посмотрелпри следующих подходах:

  • Использование момента ServiceIntent с WakefulBroadcastReceiver.Но я обнаружил, что WakefulBroadcastReceiver устарел и с Android O появилось больше ограничений на запуск фоновой работы.

  • AlarmManager

  • JobScheduler
  • WorkManager (кажется, хороший кандидат, но он все еще в альфа-версии и, похоже, не готов к производству)

Любая помощь будет высоко оценена.Спасибо

1 Ответ

0 голосов
/ 12 декабря 2018

Я предлагаю использовать WorkManager даже в альфа-версии.Я уже использую его для аналогичной задачи, и он работает.Впервые я начал использовать его, там, где происходит сбой, но после выхода новой версии больше не происходит сбоев.Google предоставляет хорошую поддержку своей библиотеке, поэтому используйте WorkManager, так как это лучший вариант для выполнения фоновых задач.

...