IllegalStateException, когда служба запускается, когда приложение находится на переднем плане на Oreo - PullRequest
0 голосов
/ 28 сентября 2018

Учитывая: У меня есть служба, которую я запускаю в onStart() операции, и я прекращаю службу в onStop() этой же операции.

Известно: В соответствии с документами Android в Android 8 существуют фоновые ограничения, при которых служба не может быть запущена, когда приложение находится в фоновом режиме и выдает IllegalStateException.(https://developer.android.com/about/versions/oreo/background)

Логический вывод: Но это ограничение не влияет на мой сценарий, поскольку моя служба работает только тогда, когда приложение находится на переднем плане (между onStart() и onStop()).

Проблема: И все же я вижу один сбой в консоли Google, который выдает IllegalStateException на устройстве Android 8 (Oreo) для строки startService(). Любая идея, почему это исключение возникает, когда службазапускается, когда приложение находится на переднем плане? Могут ли быть другие сценарии, когда IllegalStateException выбрасывается для startService()

1 Ответ

0 голосов
/ 28 сентября 2018

Попробуйте это

if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.O) {
      startforegroundservice(your_service);
}else{
      startservice(your_service);
}
...