【发布时间】:2022-11-27 15:08:19
【问题描述】:
我需要执行快速的周期性后台任务,但 PeriodicWorkRequest 被限制为 15 分钟,所以我使用 OneTimeWorkRequest 并再次自行设置。 我设置了不强制充电的约束,但根据我的测试,OneTimeWorkRequest 在显示屏关闭且未连接充电线时不会运行(大约在停止 1 分钟后) 但是当连接充电线时它工作正常!我只在 android 12 上遇到这个问题,无论它是否适用于经过测试的 android 6-7-8 和 10!
Constraints constraints = new Constraints.Builder()
.setRequiredNetworkType(NetworkType.NOT_REQUIRED)
.setRequiresCharging(false)
.setRequiresBatteryNotLow(false)
.build();
WorkRequest sendWorkRequest = new OneTimeWorkRequest.Builder(PeriodicSync.class).setInitialDelay(10, TimeUnit.SECONDS)
.addTag("sendData").setConstraints(constraints).build();
WorkManager.getInstance(Global.Controller().loginActivity).enqueue(sendWorkRequest);
【问题讨论】:
标签: android androidx android-workmanager