Получение данных от несвязанного сервиса в Android - PullRequest
4 голосов
/ 08 апреля 2011

В настоящее время у меня есть несвязанная служба, которая постоянно работает, захватывая мою позицию GPS, которую я запускаю при загрузке. Затем у меня есть приложение, которое должно составить график, где я был, извлекая данные из сервиса.

Я не могу привязать сервис к разговору, или он будет уничтожен, как только я закрою приложение.

Есть ли какой-нибудь хороший способ получить данные от несвязанного сервиса или не дать связанному сервису умереть после того, как я его откреплю?

* * 1006 Ура! :)

Ответы [ 2 ]

2 голосов
/ 08 апреля 2011

Как указано в документации :

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

Итак, сначала запустите службу с помощью startService () , затем привязать к нему в onResume () и отменить привязку в onPause ().Служба, тем не менее, продолжит работать, потому что она запущена .А если вы хотите остановить службу, либо вызовите stopSelf () из службы или stopService () из действия.Он сразу же прекратится или, как только вы отсоединитесь от него, если какая-либо связь будет жива.

2 голосов
/ 08 апреля 2011

Существует обходной путь для поддержания вашей службы в живых.Позвоните в сервис, позвонив в startService, а затем привяжитесь к сервису.Таким образом, ваша деятельность поддерживает жизненный цикл службы.

...