Esta seção detalha como personalizar o app de referência do Control Center e a interface.
Fluxos e interface do usuário
Esta seção descreve os fluxos de usuários e como iniciar o Control Center.
Abrir a Central de controle
Você pode iniciar a Central de Controle pelo Acesso rápido de apps ou um ícone na barra de navegação da interface do sistema. O ícone aparece apenas em builds que ativaram
usuários visíveis em segundo plano. Para saber mais, consulte UserHandleAware.
Você pode acessar a Central de controle a qualquer momento. A Central de Controle consiste em uma combinação de janelas translúcidas e planos de fundo transparentes para que ela possa aparecer sobre qualquer outro app, incluindo vídeos e mídia em reprodução ativa. Na página de destino do app:
- A organização da tela e o uso de telas local e remota.
- As telas preenchidas com mídia e controles de mídia.
- Como cada tela apresenta uma visualização detalhada dos controles de mídia (e muito mais).
A disposição das telas representa o layout delas no veículo. Cada tela é um DevicePickerScreen. Para personalizar a localização e o tamanho de cada tela, use uma sobreposição de recursos de tempo de execução (RRO, na sigla em inglês). Para saber mais,
consulte Mudar o valor dos recursos de um app no momento da execução.
Para cada tela em que a Central de controle está aberta, uma tela diferente com uma borda brilhante destacada é mostrada. Esta é a tela local, o display em uso.
Todas as outras telas são remotas para representar um display diferente no
carro, que pode ser identificado com base na disposição das telas no
Fragment. Para calcular o número total de zonas de ocupantes configuradas no veículo, use CarOccupantZoneManager#getAllOccupantZones.
Cada tela define um atributo personalizado controlcenter:occupantZoneId para
associar dados à respectiva zona de ocupação. Quando um app de mídia é reproduzido em
uma tela específica, a tela correspondente mostra a arte do álbum. Um botão Reproduzir (ou Pausar) é mostrado abaixo da tela.
Se o app de mídia ativo for uma tarefa visível (aberta atrás da Central de Controle), um botão Compartilhar localizado ao lado do botão Tocar será ativado para abrir a página de espelhamento. Com o Compartilhar, você pode compartilhar a exibição do app de mídia, o que é mais útil para apps de mídia com vídeo.
Elementos da tela
Ao tocar na tela, uma visualização detalhada da mídia em reprodução é mostrada. Essa é a tela de detalhes. A visualização mostra metadados de mídia, como título, progresso da reprodução e artista. Esses botões oferecem mais controle da zona de ocupação.
Saída de áudio mostra qual saída de áudio está reproduzindo a mídia, como alto-falantes da cabine ou fones de ouvido. Saída de áudio abre uma caixa de diálogo para mudar a saída de áudio e o volume da mídia.
O bloqueio de entrada da tela bloqueia a entrada na tela. Essa operação não pode ser aplicada à tela do motorista.
O Display Power desativa a energia da tela. Essa operação não pode ser aplicada à tela do motorista.
A visualização Detalhes mostra um botão Compartilhar para ser tocado quando a mídia é uma tarefa visível por trás do app Central de Controle. Compartilhar abre a página de espelhamento:
Iniciar uma sessão de assistir em grupo
A página espelhada é semelhante à página de destino, usando um RRO.
Para adicionar uma tela ao co-assistir, toque na tela e em Concluído.
Isso abre um Mirroring Activity que hospeda o app compartilhado e fornece controles flutuantes e temporários para sair da sessão de coassistir ou voltar à página de espelhamento para adicionar ou remover participantes.
Resumo
Confira um resumo das diferentes páginas na Central de controle.
Diretrizes de personalização
A Central de controle usa a biblioteca Car UI para permitir a personalização e oferece um tema e uma estrutura básicos que podem ser adotados como estão ou modificados de acordo com essas restrições.
| Personalização | Descrição |
|---|---|
| SHOULD |
Ajuste o tema e o estilo gerais usando um RRO, como:
|
| MAIO | Modificar a estrutura de UI de alto nível da Central de controle. |
A Central de controle pertence a um pacote de apps do sistema, que inclui Mídia, Central de notificações e Iniciador de apps. Esses apps compartilham estilos e recursos definidos em diferentes níveis da estrutura do AOSP:
framework/base/coreTheme.DeviceDefault, o tema projetado para uso por OEMs para personalizar a aparência padrão do dispositivo.packages/services/Car/car_product/overlay:Theme.DeviceDefault usadas para
produzir a aparência do AOSP no Android Automotive. Os OEMs podem optar por
excluir essa sobreposição e usar a própria.packages/apps/Car/libs/car-ui-lib:packages/apps/Car/libs/car-apps-common:packages/services/Car/car_product/overlay).packages/apps/Car/MultiDisplay/ControlCenter:Theme.CarUi e é
definido em car-ui-lib. ControlCenterActivity usa Theme.Transparent personalizados, que estendem Theme.CarUi.Para oferecer suporte a um fluxo (como assistir em conjunto, que exige que a tarefa espelhada esteja visível), a Central de controle usa uma combinação de janelas translúcidas e planos de fundo transparentes que não enviam o app para segundo plano nem enviam Lifecycle events.
<style name="Theme.Transparent" parent="@style/Theme.CarUi.NoToolbar">
<item name="android:windowIsTranslucent">true</item>
<item name="android:windowBackground">@color/transparent</item>
</style>