Запуск задания, даже если приложение закрыто (Android Oreo)
Helo,
Я обновил свое приложение до Android 8.0 и выше. Но теперь мои фоновые pushup-уведомления не работают.
Мое приложение работало отлично, когда я использовал сервис с таймером. Поэтому моя база push-уведомлений перезагружалась каждые 4 минуты.
Теперь в Android 8.0 все кажется сломанным. Есть исключение, когда я запускаю приложение, и оно принудительно закрывается.
Итак, теперь я попробовал эту библиотеку: https://evernote.github.io/android-job/. Я создал периодическую работу. Но когда я закрываю приложение, работа исчезла.
Мой вопрос:
- Как я могу выполнить фоновую задачу, даже если приложение закрыто, в Android 8.0 и выше? Может быть, Сомоне может написать мне пример или ссылку на сайт, который занимается этой темой?
1 ответ
Это потому
Android 8.0 (уровень API 26) накладывает ограничения на то, что приложения могут делать в фоновом режиме.
В этом случае:
Когда приложение переходит в фоновый режим, оно имеет окно в несколько минут, в котором ему по-прежнему разрешено создавать и использовать службы. В конце этого окна приложение считается бездействующим. В это время система останавливает фоновые службы приложения, как если бы приложение вызывало методы Service.stopSelf() служб.
Используйте JobScheduler
В этом случае документы предполагают, что ваше приложение может заменить фоновые службы заданиями JobScheduler.