Lorsque les utilisateurs connectent leurs téléviseurs, leurs systèmes home cinéma et leurs lecteurs de musique à l'aide de technologies sans fil, ils veulent pouvoir lire le contenu des applications Android sur ces appareils plus grands et plus puissants. L'activation de ce type de lecture peut transformer votre application mono-appareil et mono-utilisateur en une expérience partagée qui ravira et inspirera plusieurs utilisateurs.
Les API de routeur multimédia Android sont conçues pour permettre l'affichage et la lecture de contenus multimédias sur des appareils récepteurs distants à l'aide d'une interface utilisateur courante. Les développeurs d'applications qui implémentent une interface MediaRouter peuvent ensuite se connecter au framework et lire du contenu sur les appareils qui participent au framework du routeur multimédia. Les fabricants d'appareils de lecture multimédia peuvent participer au framework en publiant un MediaRouteProvider qui permet à d'autres applications de se connecter aux appareils récepteurs et d'y lire des contenus multimédias. La figure 1 illustre la manière dont une application se connecte à un appareil récepteur via le framework du routeur multimédia.
Figure 1. Présentation de la façon dont les classes de fournisseurs d'itinéraires multimédias assurent la communication entre une application multimédia et un appareil récepteur.
Remarque : Si vous souhaitez que votre application soit compatible avec les appareils Google Cast, vous devez utiliser le SDK Cast et créer votre application en tant qu'émetteur Cast. Suivez les instructions de la documentation Cast au lieu d'utiliser directement le framework MediaRouter.
Bibliothèque Support MediaRouter
Les API MediaRouter sont définies dans la bibliothèque AndroidX MediaRouter.
Cette bibliothèque est compatible avec les appareils équipés d'Android 2.3 (niveau d'API 9) ou version ultérieure, et garantit une expérience cohérente sur l'ensemble de ces appareils.
Pour en savoir plus sur les API mediarouter, consultez le package androidx.mediarouter.media dans la documentation de référence de l'API.
- API MediaRouter
- Une application multimédia utilise l'API
MediaRouterpour détecter les appareils de lecture à distance disponibles et leur envoyer du contenu audio et vidéo. - API MediaRouteProvider
- L'API
MediaRouteProviderdéfinit les fonctionnalités d'un appareil de lecture à distance et le rend visible pour les applications qui utilisent unMediaRouterpour rechercher d'autres chemins d'accès multimédias.
Le sélecteur de sortie

À partir d'Android 11, les options de routage de votre application s'affichent également dans le lecteur multimédia du système. Cela permet à l'utilisateur de passer d'un appareil à un autre de manière fluide lorsqu'il change de contexte de visionnage et d'écoute, par exemple lorsqu'il regarde une vidéo dans la cuisine plutôt que sur un téléphone, ou lorsqu'il écoute un contenu audio à la maison ou en voiture.
Appuyer sur le bouton de sélection de routage dans une notification multimédia affiche le commutateur de sortie avec les choix suivants par défaut :
- Le haut-parleur de l'appareil actuel
- Tous les appareils audio Bluetooth connectés
Les applications peuvent également proposer d'autres options en fonction de leurs fonctionnalités, comme Cast.
Les applications peuvent utiliser l'API MediaRouter pour personnaliser les choix d'itinéraire. Vous pouvez exclure les appareils que vous ne prenez pas en charge (par exemple, en filtrant les appareils Chromecast audio uniquement si vous regardez Netflix sur une smart TV) ou inclure d'autres appareils spéciaux reconnus par votre application.