Я прочитал все доступные официальные документы (которых на удивление немного), и все, что я мог получить для периодических задач, это этот код
.setRecurring(true)
// start between 0 and 60 seconds from now
.setTrigger(Trigger.executionWindow(0, 60))
Я знаю, что .setRecurring
делает задание периодическим, а trigger
запускает его с интервалом в 60 секунд, но как насчет второго запуска? означает ли это, что 2-й раз также будет выполнен через 60 секунд, начиная с 1-го?
Это не может быть правдой, потому что даже принимая во внимание оптимизацию фоновых действий и то, что службы запускаются немного позже, чем предполагалось, программирование 60-секундного периода, в то время как задание выполняется примерно на 5/10/20 минут позже, слишком много. разницы. Официальные документы говорят, что разница составляет секунды и, возможно, несколько минут, но не более 20 минут.
В общем, мой вопрос: действительно ли это .setTrigger(Trigger.executionWindow(0, 60))
означает, что период равен 60 секундам, или я ошибаюсь?