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