当我调用代码A后,即使我关闭应用程序,JobScheduler
也会继续运行。
但是一些自定义 Android 系统可能会在关闭应用程序时清除 JobScheduler
。
如何以编程方式检查 JobScheduler
是否正在运行?
代码 A
private fun startScheduleRestore(mContext:Context){
logError("Start Server")
val interval=if (isDebug())
10*1000L
else
mContext.getInteger(R.integer.AutoRestoreInterval)*60*1000L
val mJobScheduler = mContext.getSystemService(Context.JOB_SCHEDULER_SERVICE) as JobScheduler
val jobInfo = JobInfo.Builder(mContext.getInteger(R.integer.JobID), ComponentName(mContext, RestoreService::class.java))
.setPeriodic(interval)
.setPersisted(true)
.build()
mJobScheduler.schedule(jobInfo)
}
代码 B
private fun stopScheduleRestore(mContext:Context){
logError("Stop Server")
val mJobScheduler = mContext.getSystemService(Context.JOB_SCHEDULER_SERVICE) as JobScheduler
mJobScheduler.cancel(mContext.getInteger(R.integer.JobID))
}