我在使用 JobIntentService
时,在 Android 8 上遇到了 SecurityException
崩溃,targetSDK
版本为 26。
以下是来自 JobIntentService 文档的内容:
那么,最大的任务执行时间限制是多少?如果超过了这个限制,是否可能会抛出 SecurityException 异常?
谢谢!
我在使用 JobIntentService
时,在 Android 8 上遇到了 SecurityException
崩溃,targetSDK
版本为 26。
以下是来自 JobIntentService 文档的内容:
那么,最大的任务执行时间限制是多少?如果超过了这个限制,是否可能会抛出 SecurityException 异常?
谢谢!
600
秒,也就是10
分钟。接下来会发生什么呢?JobIntentService
将被销毁,然后重新创建以恢复其余工作。这已经在从AndroidMarshmallow
到Android Oreo
的设备上进行了测试。我也没有遇到任何抛出的异常,我还使用Thread.sleep()
方法来模拟长时间进程。规范的任何部分都没有说明那个时间是什么。
因此,它很可能取决于设备和/或SDK。
规范确实说了些什么 https://developer.android.com/reference/androidx/core/app/JobIntentService#onStopCurrentWork()
如果JobScheduler决定停止此作业,则会调用此方法。
因此,您可以连接到它发生的时刻。
JobService
中。 “如果我们超过了这个限制 - 是否可能会抛出SecurityException异常?” - 这些问题似乎不是由于超过10分钟的限制引起的。但是,我还没有测试过如果您尝试运行超过10分钟会发生什么。 - CommonsWare