Как начать работу при выключенном экране?
Я пытаюсь использовать Firebase JobDispatcher, чтобы адаптировать мое приложение к новым ограничениям Oreo. Одна вещь, которую мне нужно изменить, - это задача, которую нужно выполнить, когда экран выключен. Для этого я пытаюсь использовать противопоказание DEVICE_IDLE
, В моем понимании, режим ожидания означает, что устройство в настоящее время не используется, и в результате экран должен быть отключен. Пожалуйста, поправьте меня, если я ошибаюсь, мне не удалось найти точную информацию об этом в документации Android или Firebase.
Поэтому я установил свою работу следующим образом:
Job myJob = dispatcher.newJobBuilder()
.setService(EclipseLauncher.class)
.setTag(JOB_TAG)
.addConstraint(Constraint.ON_ANY_NETWORK)
.addConstraint(Constraint.DEVICE_IDLE)
.setLifetime(Lifetime.FOREVER)
.setReplaceCurrent(true)
.build();
И это не работает. Кажется, что простое ограничение полностью игнорируется, и задание запускается немедленно. Я попытался добавить отложенный триггер, и на этот раз задание запускалось, как только приложение переходит в фоновый режим (например, когда я нажимаю кнопку "Домой"). Это не совсем то, что я хочу.
Так есть ли способ, чтобы Job, чтобы запустить задачу, когда экран выключен?