Как заставить WorkManager всегда работать в фоновом режиме

Как получить WorkManager, всегда работающий в фоновом режиме, если приложение закрыто / убито / открыто, оно всегда должно быть запущено. У меня есть код в doWork метод, который проверяет изменения в базе данных и отправляет уведомление об изменении в базе данных. Таким образом, он всегда должен быть запущен в bg для проверки изменений. Так что я должен использовать для этого, OneTimeRequest или же PeriodicWorkRequest? Кроме того, в моем рабочем классе я установил Result на RETRY т.е. return Result.RETRY; В надежде, что он всегда будет работать. PS- Я не хочу, чтобы WorkManager бездействовал в любом состоянии / состоянии. Каким должен быть правильный способ сделать это?

1 ответ

Как получить WorkManager, всегда работающий в фоновом режиме, если приложение закрыто / убито / открыто, оно всегда должно быть запущено

Вы не Это не так WorkManager работает. Оно использует JobScheduler обрабатывать работу, когда ваше приложение не запущено, и JobScheduler задания не работают непрерывно.

Единственное, что смутно напоминает то, что вы хотите, - это использовать сервис переднего плана.

Другие вопросы по тегам