gpt4 book ai didi

android - JobScheduler 作业在进程被终止后被取消

转载 作者:搜寻专家 更新时间:2023-11-01 09:31:40 29 4
gpt4 key购买 nike

这是我设置工作的方式:

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())

我的测试程序:

  1. 打开我的应用
  2. 使用 adb shell dumpsys jobscheduler 获取 Activity 作业列表。我的工作可以在列表中看到。
  3. 从“最近”列表中滑动我的应用程序以终止进程。
  4. 使用相同的命令,发现我的工作不见了。
  5. jobScheduler.allPendingJobs.size 变为 0。
  6. 重新打开我的应用。
  7. 我的工作仍然不存在于 Activity 工作列表中,除非我再次手动安排它(即使我使用 setPersisted(true))。

我的测试环境:

氢操作系统,Android 7.1.1,targetSdkVersion:26。

这是预期的行为吗?如果应用被杀死,我希望作业可以定期运行,怎么办?

最佳答案

我已经确定了问题所在。有一个优化选项可以在我的应用关闭时取消我的所有作业。

在“设置”-“电池”-“电池优化”-“高级优化”里面。 (我的系统语言不是英文,所以这是一个大概的翻译)

关于android - JobScheduler 作业在进程被终止后被取消,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46742376/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com