Como rotear dispositivos

Quando os usuários conectam as televisões, os sistemas de home theater e os players de música por meio de tecnologias sem fio, eles querem poder tocar conteúdo de apps para Android nesses dispositivos maiores e mais altos. Ativar esse tipo de reprodução pode transformar seu app de um dispositivo e um usuário em uma experiência compartilhada que encante e inspire vários usuários.

As APIs de roteador de mídia do Android foram desenvolvidas para ativar a exibição e a reprodução de mídia em dispositivos receptores remotos usando uma interface de usuário comum. Desenvolvedores de apps que implementar uma interface MediaRouter pode se conectar e reproduzir conteúdo nos dispositivos que participam do framework do roteador de mídia. Os fabricantes de dispositivos de mídia podem participar do framework publicando um MediaRouteProvider que permita que outros aplicativos se conectem e abram mídia nos dispositivos receptores. A Figura 1 ilustra como um app se conecta a um dispositivo receptor por meio do framework do roteador de mídia.

Figura 1. Visão geral de como as classes do provedor de roteamento de mídia oferecem comunicação de um app de mídia para um dispositivo receptor.

Observação:se você quiser que seu app seja compatível Dispositivos com Google Cast, use o SDK do Cast e crie seu app como um remetente do Cast. Siga as instruções no Documentação do Google Cast em vez de usar o framework do MediaRouter diretamente.

Biblioteca de suporte do MediaRouter

As APIs MediaRouter são definidas na Biblioteca AndroidX MediaRouter. Essa biblioteca é compatível com dispositivos com o Android 2.3 (API de nível 9) e versões posteriores e garante uma experiência consistente em todos eles. Para informações detalhadas sobre as APIs mediarouter, consulte a androidx.mediarouter.media na referência da API.

API MediaRouter
Um app de música usa a API MediaRouter para descobrir os dispositivos de reprodução remota disponíveis e rotear áudio e vídeo para eles.
API MediaRouteProvider
A API MediaRouteProvider define os recursos de um dispositivo de reprodução remota e os torna visíveis para apps que usam um MediaRouter para procurar caminhos de mídia alternativos.

Seletor de saída

No Android 11 e versões mais recentes, o roteamento do seu app também aparecem no player de mídia do sistema. Isso ajuda a dar ao usuário uma jornada perfeita ao alternar entre os dispositivos enquanto eles mudam os contextos de visualização e reprodução, como assistir vídeos na cozinha ou em um smartphone ou ouvir áudio em casa ou no carro.

Pressionar o botão de seleção de rota em uma notificação de mídia exibe o seletor de saída com estas opções por padrão:

  • O alto-falante no dispositivo atual
  • Todos os dispositivos de áudio Bluetooth conectados

Os apps também podem oferecer mais opções, dependendo dos recursos deles, como a transmissão.

Os apps podem usar o MediaRouter API para personalização as opções de roteamento. Você pode excluir dispositivos incompatíveis (como filtros envie um Chromecast somente de áudio se estiver assistindo uma smart TV com Netflix) ou inclua e outros dispositivos especiais que o app reconhece.