这就是我建立工作的方式:
val builder = JobInfo.Builder(1, ComponentName(this,
PullDataJob::class.java))
.setPeriodic(1000L * 60 * 60) // one hour
.setRequiredNetworkType(NETWORK_TYPE_ANY)
.setPersisted(true)
jobScheduler.schedule(builder.build())
我的测试程序:
adb shell dumpsys jobscheduler
获取有效作业列表。我的工作可以在清单中看到。jobScheduler.allPendingJobs.size
变为0。setPersisted(true)
)。我的测试环境:
Hydrogen OS,Android 7.1.1,targetSdkVersion:26。
这是预期的行为吗?如果我希望工作能够定期运行,即使应用程序被杀,我该怎么办?
答案 0 :(得分:2)
我发现了问题所在。有一个优化选项可以在我的应用关闭时取消所有工作。
它在“设置” - “电池” - “电池优化” - “高级优化”中。 (我的系统语言不是英语,所以它是一个近似的翻译)