У меня есть служба, которая расширяет JobService.
override fun onStopJob(p0: JobParameters?): Boolean {
return true
}
override fun onStartJob(params: JobParameters?): Boolean {
Log.d(TAG,"onStartJob :: $params")
if (params != null) {
// Do some work..
jobFinished(params, false)
}
return true
}
Существует код для публикации задания с использованием JobScheduler.
val jobScheduler = context.getSystemService(JOB_SCHEDULER_SERVICE) as JobScheduler
val componentName = ComponentName(context, AndroidAutoService::class.java)
val jobId = UUID.randomUUID().hashCode()
val jobInfo = JobInfo.Builder(jobId, componentName).setOverrideDeadline(0).build()
Log.d(TAG,"jobInfo :: $jobInfo")
jobScheduler.schedule(jobInfo)
- Ожидаемое поведение , когда мы вызываем jobScheduler.schedule (jobInfo) , он должен немедленно вызвать метод onStartJob () .
- Проблема: После вызова расписания (jobInfo) для запуска задания onStartJob () требуется некоторое время (от 8 до 10 секунд).
- Это не происходит постоянно
Пожалуйста, есть идеи, почему я сталкиваюсь с этой проблемой? Спасибо за ваше предложение.