A UI do Rádio é implementada como um aplicativo independente. Instruções sobre como integrar uma UI de rádio ao hardware de rádio podem ser encontradas em Implementar rádio .
A seção a seguir descreve como integrar Radio UI com Media para fornecer aos usuários uma experiência perfeita que permite aos usuários interagir com fontes de mídia e rádio como se fossem um único aplicativo.
Fonte de mídia alternando fluxo de usuário
O diagrama a seguir ilustra como a implementação de referência de Rádio e Mídia implementa o fluxo de usuário de alternância de aplicativos.
Figura 1. Fluxo de usuário de troca de fonte de mídia
Para fornecer uma transição perfeita entre Rádio e outros aplicativos em Mídia, a biblioteca car-media-common
define intenções do Android que podem ser usadas para iniciar um seletor de fonte de mídia. No AOSP, esse seletor é implementado no App Launcher, apresentando a mesma UI para iniciar aplicativos, mas filtrado para exibir apenas fontes de mídia.
Os OEMs podem optar por adotar a implementação atual do App Launcher como está ou implementar um seletor de fonte de mídia personalizado.
O seletor pode atuar em dois modos:
- Fluxo normal. Após utilizar o seletor, a fonte selecionada é exibida em Mídia para que o usuário possa navegar pelo seu conteúdo.
- Como um interruptor. Um seletor é usado para alternar fontes, mas a mídia não é exibida ao usuário. Isso se aplica ao ícone do Seletor na página inicial. Após selecionar uma fonte, a tela anterior mais recente é exibida ao usuário (neste caso, a página inicial).
A intenção usada para alternar entre fontes de mídia pode ser obtida no método MediaSource#getSourceSelectorIntent()
, que aceita um booleano popup
que retorna uma intenção de iniciar cada um dos fluxos descritos acima.
As intenções reais são definidas em packages/apps/Car/libs/car-media-common/res/values/config.xml
. Para personalizar essa configuração, use sobreposições em tempo de compilação.
Substitua o aplicativo de rádio
Dado que o aplicativo Rádio implementa Navegação de Mídia e Sessão de Mídia, o Rádio é exibido no inicializador de aplicativos. Para evitar o lançamento de mídia quando um usuário clica no ícone, dois elementos são necessários. A rádio deve :
- Tenha uma atividade de lançador .
- Ser declarado como uma fonte personalizada . Para fazer isso, adicione o nome do componente à chave
custom_media_packages
emcar-media-common/res/values/config.xml
.
Restrições de condução UX
A mídia deve observar todas as restrições de distração ao dirigir UX. Para isso, a mídia deve ouvir o CarUXRestrictionManager e implementar todas as suas políticas.
- A mídia deve se conectar à biblioteca Car e obter uma instância de CarUXRestrictionManager .
- A mídia deve assinar atualizações na lista de CarUxRestrictions e implementá-las conforme documentado.
- Particularmente importantes para a mídia são:
-
UX_RESTRICTIONS_NO_SETUP
. Neste caso, o fluxo de login deve ser desabilitado. -
UX_RESTRICTIONS_LIMIT_STRING_LENGTH
. As mensagens de erro e outros textos fornecidos pelos aplicativos de mídia devem ser limitados ao comprimento determinado.
-