Как остановить Android Bound Service, когда приложение убито? - PullRequest
0 голосов
/ 04 мая 2020

Я создал службу для реализации функциональности проигрывателя Musi c, и я привязан к службе.

Все работает нормально, единственная проблема заключается в том, что когда я убиваю свое приложение, пока песня во время воспроизведения приложение убивает, уведомление также исчезает, но песня продолжает воспроизводиться в фоновом режиме без каких-либо уведомлений, и чтобы остановить звук, необходимо снова запустить приложение. Но когда я очищаю все задачи (убиваю все приложения) во время воспроизведения песни, она убивает как приложение, так и песню, и это правильно.

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

Я реализовал onTaskRemoved () обратный вызов, но контроль не всегда приходит туда.

Кто-нибудь может мне здесь помочь? Заранее спасибо.

1 Ответ

0 голосов
/ 04 мая 2020

Похоже, что приложение не полностью отключено от службы, попробуйте вызвать unbindService (). Если ваш клиент все еще связан со службой, когда ваше приложение уничтожает клиента, уничтожение приводит к тому, что клиент отменяет привязку. Лучше практиковаться, чтобы отвязать клиента, как только это будет сделано, взаимодействуя со службой. Это позволяет отключить бездействующую службу. Попробуйте посмотреть Управление жизненным циклом связанной службы https://developer.android.com/guide/components/bound-services#Lifecycle

...