Я делаю Android-игру, и у меня есть служба, которая играет фоновую музыку. Я использую две кнопки, чтобы начать и остановить музыку из активности Title/Menu. Проблема, с которой я столкнулась, заключается в том, что если музыка оставлена, когда вы когда-либо получаете вызов или выходите из приложения, музыка все еще воспроизводится, пока вы не перейдете в приложение и не выключите его.
Спасибо заранее.
Если вы все еще хотите воспроизводить музыку в Сервисе, вам необходимо связаться с Activity (где вы узнаете о событиях жизненного цикла) в Службе (где музыка может быть воспроизведена/остановлена).
В Android вы делаете это посредством привязки Службы к Activity. См. Связанные службы или многие другие статьи в Интернете (например здесь).
Идея заключается в том, что вы создаете класс/объект с помощью настраиваемого API. Этот объект может использоваться кодом активности. Когда вы вызываете методы в этом API, Android действительно отправит эти вызовы в Службу. Таким образом, вы запускаете Сервис где-то в своем коде, а позже вы можете получить его, работая со своим Binder.
НТН
Лучший способ сделать это - отправить команду, чтобы остановить музыку в onPause() или onStop(). Кажется, вы уже знаете, как остановить музыку, за ваши комментарии. Вам также необходимо запустить музыку в соответствующей команде. Я бы рекомендовал использовать onPause(). См. жизненный цикл деятельности.
onPause
?