我想在一天结束时将一些数据同步到服务器中(例如定期同步8个小时左右)。 PeriodicWorkRequest在API级别21可以正常工作。但是在API级别23上,它仅被调用一次。完全不会重复。
当前,我正在使用图书馆 android.arch.work:work-runtime:1.0.1。尝试将其更改为android.arch.work:work-runtime:1.0.0-alpha04,但不会重复调用它。
我从BaseActivity调用它。
Constraints constraints = new Constraints.Builder()
.setRequiredNetworkType(NetworkType.CONNECTED).build();
final PeriodicWorkRequest workRequest =
new PeriodicWorkRequest.Builder(
MyWorker.class,
15,
TimeUnit.MINUTES)
.setConstraints(constraints)
.build();
WorkManager.getInstance().enqueue(workRequest);
WorkManager.getInstance().getWorkInfoByIdLiveData(workRequest.getId()).observe(this, new Observer<WorkInfo>() {
@Override
public void onChanged(WorkInfo workInfo) {
}
});