Поскольку видеоприложение запускает медиасеанс и медиаконтроллер в одном и том же действии, обратные вызовы медиасеанса отличаются от реализации, показанной для архитектуры сервера/клиента аудиоприложения . Вызовы служб отсутствуют, а уведомления обрабатываются через NotificationManager. В следующей таблице показано, как различные функции контролируются в каждом методе обратного вызова:
| onPlay() | onPause() | onStop() | |
| Аудио Фокус | requestFocus() передает ваш OnAudioFocusChangeListener .Всегда сначала вызывайте requestFocus() , продолжайте только в том случае, если фокус предоставлен. | abandonAudioFocus() | |
| Медиа-сессия | setActive(true)- Обновление метаданных и состояния | - Обновление метаданных и состояния | setActive(false)- Обновление метаданных и состояния |
| Реализация игрока | Запустить плеер | Приостановить проигрыватель | Остановить плеер |
| Становится шумным | Зарегистрируйте свой BroadcastReceiver | Отмените регистрацию BroadcastReceiver | |
| Уведомления | Показать уведомление | Уведомление об обновлении |