Запуск задания, даже если приложение закрыто (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.

Другие вопросы по тегам