У меня есть класс мониторинга переднего плана, который регистрируется как LifecycleObserver
для ProcessLifecycleOwner
s Lifecycle
. Когда я получаю событие ON_START
, я запускаю Service
для запуска, пока приложение находится на переднем плане. Я часто вижу IllegalStateException
s при запуске приложения, что запуск службы в фоновом режиме не разрешен. Разве это не надежный способ проверить, находится ли приложение на переднем плане? Я думал, что ProcessLifecycleOwner
должен был быть ответом на старый, хакерский способ подсчета активности с Application.ActivityLifecycleCallbacks
. У меня не было этой проблемы с использованием этого решения.