Остановите службу, когда ни одно из действий не находится на переднем плане - PullRequest
4 голосов
/ 09 марта 2011

У меня есть служба, которая используется всеми моими действиями и должна быть остановлена, когда ни одно из действий не находится на переднем плане, но продолжает работать все время, когда одно действие является видимым. Поскольку Android не поддерживает внутреннее состояние, чтобы знать, какое приложение находится на переднем плане, есть ли какой-нибудь чистый способ добиться этого?

Ответы [ 2 ]

1 голос
/ 05 июля 2012

Я думаю, @biquillo неправильно понял ваш вопрос, но я нашел хорошую идею в CommonsWare ответе ..

По сути, вы можете запустить сервис, просто связавшись с ним и установив флаг, чтобы создать его, если он еще не создан. Затем, когда какая-либо деятельность создается, она привязывается к сервису, onDestroy она привязывается .. Это приведет к уничтожению службы один раз, когда к ней не будет привязано действие ..

Надеюсь, что это поможет, и это решило вашу проблему;) Приветствия

0 голосов
/ 09 марта 2011

См. Жизненный цикл действия, указанный на http://developer.android.com/reference/android/app/Activity.html

Понимать, когда вызываются методы onStart, onStop и onPause. Затем вы можете запуститьService / StopService из них соответственно.

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