Служба, выходящая после последнего клиента, отменяет привязку, даже если startService () вызывается заранее? - PullRequest
0 голосов
/ 10 июня 2010

У меня есть приложение, в котором есть активность клиента и долгосрочная служба. Сервис может быть запущен диспетчером аварий или самой Активностью.

Намерение тревоги вызывает startService (). Activity вызывает startService, а затем привязывает себя к службе, чтобы она могла получать от нее информацию.

Когда я возвращаюсь из Действия, onDestroy () вызывается для Activity, действие отсоединяется от Сервиса, а onDestroy () вызывается для Сервиса.

У меня сложилось впечатление, что если бы я вызвал startService (), то Служба оставалась бы до тех пор, пока не была вызвана stopService () / stopSelf (), независимо от того, какие клиенты от нее не связаны.

Я что-то неправильно понимаю?

1 Ответ

1 голос
/ 10 июня 2010

Это частично зависит от используемой версии SDK. В этой ссылке Service Lifecycle говорится, что onStartCommand () должна возвращать START_STICKY для поведения, которое вы хотите. До уровня API 5 не было onStartCommand и все службы были липкими.

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