Поскольку пользователи подключают свои телевизоры, домашние кинотеатры и музыкальные плееры к беспроводным устройствам, им хочется иметь возможность воспроизводить контент из приложений Android на этих больших и громких устройствах. Возможность такого воспроизведения может превратить ваше приложение для одного устройства и одного пользователя в общий опыт, который порадует и вдохновит множество пользователей.
API-интерфейсы маршрутизатора мультимедиа Android предназначены для обеспечения отображения и воспроизведения мультимедиа на удаленных устройствах-приемниках с использованием общего пользовательского интерфейса. Разработчики приложений, реализующие интерфейс MediaRouter могут затем подключаться к этой платформе и воспроизводить контент на устройствах, участвующих в работе маршрутизатора мультимедиа. Производители устройств воспроизведения мультимедиа могут участвовать в работе платформы, публикуя MediaRouteProvider , который позволяет другим приложениям подключаться к устройствам-приемникам и воспроизводить на них мультимедиа. На рисунке 1 показано, как приложение подключается к устройству-приемнику через платформу маршрутизатора мультимедиа.

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

Начиная с Android 11, параметры маршрутизации вашего приложения также отображаются в системном медиаплеере. Это помогает пользователю беспрепятственно переключаться между устройствами при изменении контекста просмотра и прослушивания, например, при просмотре видео на кухне или на телефоне, или при прослушивании аудио дома или в машине.
Нажатие кнопки выбора маршрута в уведомлении о воспроизведении медиафайлов открывает переключатель вывода со следующими вариантами по умолчанию:
- Динамик на текущем устройстве
- Все подключенные аудиоустройства Bluetooth
Приложения также могут предоставлять больше возможностей в зависимости от своих функций, например, Cast.
Приложения могут использовать API MediaRouter для настройки параметров маршрутизации. Вы можете исключить устройства, которые не поддерживаются (например, отфильтровать только аудиосигнал Chromecast, если вы смотрите Netflix на смарт-телевизоре), или включить другие специальные устройства, которые распознает ваше приложение.