我有一个JobService,它启动一个线程,并与服务器进行一些长期运行的同步。同步实际上可能会持续一个小时或更长时间。作业计划在电话充电时启动,并应每小时重新启动一次:
JobInfo jobInfo = new JobInfo.Builder(JOB_ID, serviceName)
.setRequiresCharging(true)
.setOverrideDeadline(1 * 60 * 60 * 1000)
.build();因此,我插入了我的Android 7手机,并观察了日志。我可以清楚地看到,每隔10分钟左右,作业就会被调度程序停止(调用onStopJob() ),然后重新启动。
为什么即使电话接通了,调度程序也会停止我的工作?
我检查过是否有内存泄漏,但似乎不是这样的。
救命啊!
发布于 2018-03-27 23:08:52
根据other answers的说法,确实有10分钟的最大执行限制。
https://stackoverflow.com/questions/46590488
复制相似问题