Кажется, что чаще всего при попытке запланировать работу с помощью JobScheduler
я получаю следующую ошибку, и работа не запускается:
2018-11-16 08:59:58.740 912-4220/? E/JobScheduler: jobid:20536
java.lang.IllegalStateException: Same jobid in systemuid.
at com.android.server.job.JobSchedulerService.scheduleAsPackage(JobSchedulerService.java:888)
at com.android.server.job.JobSchedulerService$JobSchedulerStub.schedule(JobSchedulerService.java:2592)
at android.app.JobSchedulerImpl.schedule(JobSchedulerImpl.java:44)
at com.android.server.backup.FullBackupJob.schedule(FullBackupJob.java:54)
at com.android.server.backup.BackupManagerService$3.run(BackupManagerService.java:1925)
at android.os.Handler.handleCallback(Handler.java:873)
at android.os.Handler.dispatchMessage(Handler.java:99)
at android.os.Looper.loop(Looper.java:193)
at android.os.HandlerThread.run(HandlerThread.java:65)
Код, который я использую для планированияработа внутри onCreate()
действия выглядит следующим образом:
JobScheduler js = (JobScheduler) getSystemService(Context.JOB_SCHEDULER_SERVICE);
js.schedule(new JobInfo.Builder(123, new ComponentName(this, TestService.class))
.setMinimumLatency(5000)
.build());
Что может вызвать эту ошибку?Кажется, не имеет значения, какой идентификатор я передаю конструктору JobInfo.Builder()
- это всегда те же самые 20536, упомянутые в трассировке стека.