Как убить службу другим действием?
-
20-09-2019 - |
Вопрос
- Действие 1 запускает Службу, используя стандартное намерение.
- Действие 1 запускает Действие 2.Затем действие 1 завершается().
- Теперь есть только Действие 2.
Как действие 2 убивает службу, поскольку это намерение было создано в действии 1?Я не хочу передавать намерение повсюду...
Решение
Обычно существует несколько способов запуска службы:
- стартСервис() - после этого вам нужно явно остановить службу с помощью stopService()
- [bindService()][2] — этот метод позволяет автоматически управлять жизненным циклом сервиса.Таким образом, вы можете остановить службу после того, как последний клиент сказал unbind();
Для получения подробной информации проверьте документы
[2]: http://developer.android.com/reference/android/content/Context.html#bindService(android.content.Intent, android.content.ServiceConnection, int)
Другие советы
Вас не должны волновать эти вещи.Просто вызовите stopService и передайте ему новый объект Intent.
Не связан с StackOverflow