получать, когда сервис не работает - PullRequest
0 голосов
/ 04 октября 2011

Я создаю приложение, в котором мне нужен сервис, который никогда не остановится, как системные сервисы Android. Я могу перезапустить мой сервис системой с помощью start_not_sticky, но нет никакой гарантии, что мой сервис никогда не остановится. Так что моя идея заключается в том, что если есть какой-либо способ распространения приема, когда моя служба будет отключена, я могу перезапустить службу. Есть ли способ получить это?

1 Ответ

1 голос
/ 04 октября 2011

Документация объясняет это лучше всего:

  • Используйте API startForeground(int, Notification), чтобы перевести службу в приоритетное состояние, когда система считает, что это то, что пользователь активно знаети, следовательно, не кандидат на убийство, когда мало памяти.(По-прежнему теоретически возможно уничтожение службы под сильным давлением памяти со стороны текущего приложения переднего плана, но на практике это не должно вызывать беспокойства.)

  • Обратите внимание, что это означает, что большинствоесли служба работает, она может быть убита системой, если она находится под сильным давлением памяти.Если это произойдет, система позже попытается перезапустить службу.Важным следствием этого является то, что если вы реализуете onStartCommand () для планирования работы, выполняемой асинхронно или в другом потоке, то вы можете захотеть использовать START_FLAG_REDELIVERY, чтобы система повторно доставила Намерение для вас, чтобы оно непотеряться, если ваш сервис был убит во время обработки

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...