Как перенести JobScheduler?
Как перенести JobScheduler, с которого я начал setPeriodic()
Я хочу изменить время планировщика позже с помощью ввода пользователя.
JobInfo.Builder builder =
new JobInfo.Builder(JOB_ID, new ComponentName(this, MyJobScheduler.class));
builder
.setPeriodic(15000)
.setRequiredNetworkType(JobInfo.NETWORK_TYPE_ANY)
.setPersisted(true);
jobScheduler.schedule(builder.build());
2 ответа
Решение
В настоящее время нет возможности перенести работу. Что вы можете сделать, это вызвать метод cancel(), чтобы отменить задание с заданным идентификатором задания и запланировать новое задание. Так это будет выглядеть примерно так:
jobScheduler.cancel(JOB_ID);
// Construct a new JobInfo.Builder
jobScheduler.schedule(builder.build());
Если вы хотите изменить параметр позже, вы можете сделать именно так, как вы написали. Однако вы должны использовать точно такой же идентификатор работы. Система обновит задание.