Версия Android: 8.1.0
Устройство: Infinix X604B
Workmanager: 1.0.0-alpha11 (последняя версия)
Запланировал запуск PeriodicWorkRequest каждые 15 минут. Запрос на работу запускается каждые 15 минут в течение примерно одного часа. Тогда PeriodicWorkRequest перестает работать. Через 8 часов фоновая работа вообще не расписывается. Я не убивал свое приложение, оно в фоне.
Когда я возвращаю приложение на передний план, PeriodicWorkRequest снова запускает фоновую задачу. С аналогичным опытом без повтора после того, как я поместил свое приложение в фоновый режим.
Я отключил оптимизацию батареи для своего приложения.
Вот образец класса My Worker.
class TestWorker extends Worker {
public TestWorker(
@NonNull Context context,
@NonNull WorkerParameters params) {
super(context, params);
}
@NonNull
@Override
public Result doWork() {
// Adding timestamp of background execution to firestore.
Map<String, String> value = new TreeMap<>();
SimpleDateFormat df = new SimpleDateFormat("hh:mm");
String dateFormat = df.format(Calendar.getInstance().getTime());
value.put("time", dateFormat);
FirebaseFirestore.getInstance()
.collection("my-collection")
.add(value);
return Result.SUCCESS;
}
}
Вот как я это называю:
PeriodicWorkRequest.Builder testBuilder =
new PeriodicWorkRequest.Builder(TestWorker.class, 15,
TimeUnit.MINUTES);
PeriodicWorkRequest testWork = testBuilder.build();
WorkManager.getInstance().enqueue(testWork);
PeriodicWorker
? - person Jeel Vankhede   schedule 13.11.2018