WorkManger 适用于 Oreo 但不适用于 Lollipop
WorkManger works on Oreo but not Lollipop
WorkManager
声明它适用于 JobScheduler
之前的操作系统等,但它似乎不适用于使用 AlarmManager
的 API 级别。我有一个 PeriodicWorkRequest
,它在 Oreo 上每隔一段时间运行一次就好了,但在 Lollipop 上,它只运行第一次。
有问题的代码(PeriodicWorker.class
当然是我自己的class
):
WorkManager
.getInstance()
.enqueue(
new PeriodicWorkRequest.Builder(
PeriodicWorker.class,
PeriodicWorkRequest.MIN_PERIODIC_INTERVAL_MILLIS,
TimeUnit.MILLISECONDS
)
.setConstraints(
new Constraints.Builder()
.setRequiredNetworkType(NetworkType.CONNECTED)
.build()
)
.build()
);
我的 WorkManager 依赖项是 android.arch.work:work-runtime:1.0.0-alpha03
。
Lollipop 的功能已在较新版本中修复:android.arch.work:work-runtime:1.0.0-alpha04
。
WorkManager
声明它适用于 JobScheduler
之前的操作系统等,但它似乎不适用于使用 AlarmManager
的 API 级别。我有一个 PeriodicWorkRequest
,它在 Oreo 上每隔一段时间运行一次就好了,但在 Lollipop 上,它只运行第一次。
有问题的代码(PeriodicWorker.class
当然是我自己的class
):
WorkManager
.getInstance()
.enqueue(
new PeriodicWorkRequest.Builder(
PeriodicWorker.class,
PeriodicWorkRequest.MIN_PERIODIC_INTERVAL_MILLIS,
TimeUnit.MILLISECONDS
)
.setConstraints(
new Constraints.Builder()
.setRequiredNetworkType(NetworkType.CONNECTED)
.build()
)
.build()
);
我的 WorkManager 依赖项是 android.arch.work:work-runtime:1.0.0-alpha03
。
Lollipop 的功能已在较新版本中修复:android.arch.work:work-runtime:1.0.0-alpha04
。