Поскольку пользователи подключают свои телевизоры, домашние кинотеатры и музыкальные проигрыватели с помощью беспроводных технологий, они хотят иметь возможность воспроизводить контент из приложений Android на этих более крупных и громких устройствах. Включение такого типа воспроизведения может превратить ваше приложение для одного устройства и одного пользователя в общий опыт, который радует и вдохновляет многих пользователей.
API-интерфейсы Android-медиа-маршрутизатора разработаны для обеспечения отображения и воспроизведения мультимедиа на удаленных устройствах-приемниках с использованием общего пользовательского интерфейса. Разработчики приложений, реализующие интерфейс MediaRouter
, могут затем подключаться к фреймворку и воспроизводить контент на устройствах, которые участвуют в фреймворке медиа-маршрутизатора. Производители устройств воспроизведения мультимедиа могут участвовать в фреймворке, публикуя MediaRouteProvider
, который позволяет другим приложениям подключаться и воспроизводить мультимедиа на устройствах-приемниках. На рисунке 1 показано, как приложение подключается к устройству-приемнику через фреймворк медиа-маршрутизатора.
Рисунок 1. Обзор того, как классы поставщика маршрутов мультимедиа обеспечивают связь между мультимедийным приложением и принимающим устройством.
Примечание: Если вы хотите, чтобы ваше приложение поддерживало устройства Google Cast , вам следует использовать Cast SDK и создать свое приложение как отправитель Cast. Следуйте инструкциям в документации Cast вместо того, чтобы использовать фреймворк MediaRouter напрямую.
Библиотека поддержки MediaRouter
API mediarouter определены в библиотеке AndroidX MediaRouter . Эта библиотека совместима с устройствами под управлением Android 2.3 (API уровня 9) и выше и обеспечивает единообразный опыт на всех из них. Подробную информацию об API mediarouter см. в пакете androidx.mediarouter.media
в справочнике по API.
- API-интерфейс MediaRouter
- Медиа-приложение использует API
MediaRouter
для обнаружения доступных удаленных устройств воспроизведения и маршрутизации на них аудио и видео. - API MediaRouteProvider
- API
MediaRouteProvider
определяет возможности удаленного устройства воспроизведения и делает его видимым для приложений, использующихMediaRouter
для поиска альтернативных путей передачи мультимедиа.
Выходной переключатель
Начиная с Android 11, параметры маршрутизации вашего приложения также отображаются в системном медиаплеере. Это помогает пользователю бесперебойно перемещаться между устройствами, когда он меняет контексты просмотра и прослушивания, например, смотрит видео на кухне или на телефоне или слушает аудио дома или в машине.
Нажатие кнопки выбора маршрута в уведомлении мультимедиа открывает переключатель выходов со следующими вариантами выбора по умолчанию:
- Динамик на текущем устройстве
- Все подключенные аудиоустройства Bluetooth
Приложения также могут предоставлять больше возможностей в зависимости от своих возможностей, например Cast.
Приложения могут использовать API MediaRouter
для настройки вариантов маршрутизации. Вы можете исключить устройства, которые вы не поддерживаете (например, отфильтровав только аудио Chromecast, если вы смотрите Netflix Smart TV) или включить другие специальные устройства, которые распознает ваше приложение.