
O Android Automotive OS é uma versão do Android otimizada para uso no carro que se estende à plataforma principal do Android. Os carros com o Google integrado usam o Android Automotive OS e vêm com apps e serviços do Google, incluindo o Google Play, o Google Assistente e o Google Maps.
Saiba mais sobre o hardware do Android Automotive OS
Para saber mais sobre as especificações mínimas de hardware para dispositivos do SO Android Automotive, consulte a seção Requisitos automotivos do Documento de definição de compatibilidade do Android (CDD, na sigla em inglês) para as versões do Android com suporte do app.
Corte da tela
Assim como em outros formatos do Android, os recortes de tela são compatíveis com dispositivos Android Automotive OS com telas não retangulares. No entanto, o tamanho e a forma dos recortes encontrados em carros podem ser bastante diferentes dos encontrados em outros formatos. Consulte Trabalhar com cortes e encartes de janela para receber orientações detalhadas.
Áudio
Os dispositivos Android Automotive OS geralmente têm volume fixo. Para saber mais sobre como isso pode afetar seu app, consulte Trabalhar com dispositivos de volume fixo.
Entender o software do Android Automotive OS
Embora o Android Automotive OS seja baseado no mesmo sistema operacional principal usado por outros formatos, há alguns recursos adicionais exclusivos que podem afetar a forma como os apps são desenvolvidos e usados.
IU do sistema
Há algumas diferenças na forma como esses elementos da interface do sistema funcionam em carros que você precisa conhecer.
Navegação
Diferente de outros formatos, não é necessário que os dispositivos Android Automotive OS
tenham uma affordance de hardware ou software. Quando não forem executadas no
modo de compatibilidade, as atividades implementadas pelo app precisam incluir affordances
de interface para permitir a navegação no app e atender à diretriz de qualidade
AN-1
.
Layout da barra do sistema
Assim como em outros formatos, o Android Automotive OS inclui barras do sistema, como barras de status e de navegação. Em carros, essas barras podem ser dimensionadas e posicionadas de maneira diferente de outros formatos. Por exemplo, as barras de navegação podem ser posicionadas à esquerda, à direita ou na parte de baixo da tela. Mesmo que haja uma barra de status na parte de cima e uma barra de navegação na parte de baixo, como é o caso da maioria dos smartphones e tablets, o tamanho desses elementos provavelmente será muito maior em carros.
Além disso, embora os cortes de tela em dispositivos móveis geralmente estejam contidos nos limites das barras do sistema, isso não acontece em carros.
Consulte Trabalhar com cortes e encartes de janela para receber orientações detalhadas.
Modo imersivo
O Android Automotive OS permite que os OEMs controlem se os apps podem ou não mostrar ou ocultar as barras de sistema para entrar e sair do modo imersivo. Ao impedir que os apps ocultem as barras de sistema, os OEMs podem garantir que os controles do veículo, como os de clima, fiquem sempre acessíveis na tela.
Restrições à experiência do usuário
As restrições de experiência do usuário (UX) são o recurso integrado ao Android Automotive OS para lidar com considerações de distração do motorista. As restrições de UX são responsáveis por impedir automaticamente o uso de apps que não foram otimizados para uso ao dirigir.

O conjunto exato de regras que determinam como e quando as restrições de UX estão ativas é determinado pelos fabricantes de veículos. Essas regras podem variar de acordo com a região. Por exemplo, o mesmo veículo vendido na Europa pode ter regras diferentes dos vendidos nos Estados Unidos.
As regras de restrição de UX também podem variar de acordo com a tela em um veículo. Por exemplo, é possível que uma tela central na linha de visão do motorista seja restringida enquanto o veículo está em movimento, enquanto uma tela do passageiro permanece sem restrições.
Se o app precisar se adaptar a restrições de UX, faça referência a elas diretamente. Não tente fazer engenharia reversa da implementação. Por exemplo, se você presumir que as restrições de UX estão ativas quando a marcha não estiver em "Estacionamento", poderá restringir desnecessariamente um app em execução em uma tela do passageiro.
Otimização contra distrações
Por padrão, as atividades não podem ser executadas enquanto as restrições de UX estão
ativas para limitar as distrações do motorista. Para indicar ao sistema que uma atividade
precisa continuar em execução enquanto o veículo está em movimento, o elemento <meta-data>
a seguir pode ser adicionado ao elemento <activity>
correspondente.
<activity ...>
<meta-data android:name="distractionOptimized" android:value="true">
</activity>
Ao desenvolver apps para o Android Automotive OS, esses metadados
só precisam estar presentes no manifesto quando declarar o elemento de manifesto <activity>
para a CarAppActivity
de um app criado usando a biblioteca Car App.
Nenhuma outra atividade pode ser marcada como otimizada para distração. Se uma for, o
app será rejeitado quando enviado à Google Play Store.
Acessibilidade
O suporte à acessibilidade para o Android Automotive OS não é tão amplo quanto em outros formatos. O TalkBack, o Acesso com interruptor e o Acesso por voz não estão disponíveis em dispositivos com o Android Automotive OS.
As preferências de legenda têm suporte em dispositivos Android Automotive OS. Consulte Adotar as configurações de legenda do sistema para conferir detalhes sobre a integração.
Seleção de rede
O Android Automotive OS oferece suporte à seleção de rede por aplicativo (PANS, na sigla em inglês), que permite que os OEMs roteiem o tráfego de rede móvel para diferentes redes de acordo com cada aplicativo.
A maioria dos apps usa apenas a rede padrão atribuída a eles e só pode se beneficiar desse recurso. Por exemplo, o OEM pode pagar pelo tráfego de rede do seu app, mesmo que o usuário não tenha um plano de dados. Se o app (ou uma das dependências dele) depender de redes diferentes da padrão, ele não poderá se beneficiar das preferências definidas pelo OEM. Consulte Ler o estado da rede para mais orientações sobre como usar redes diferentes da padrão.
Recursos do sistema
É possível detectar se um determinado recurso está disponível usando
PackageManager::hasSystemFeature
e ajustar o comportamento do app
de acordo.
Recursos de hardware
Assim como em outros formatos não móveis, os recursos de hardware disponíveis em carros podem ser diferentes dos encontrados em dispositivos móveis.
Orientação da tela
Assim como as TVs, os carros são dispositivos de orientação fixa. Diferente das TVs, eles têm
orientações retrato e paisagem. Para garantir que os apps criados para o Android
Automotive OS possam ser distribuídos para todos os veículos, eles não
podem ter requisitos de recursos explícitos ou implícitos para os recursos
android.hardware.screen.landscape
ou android.hardware.screen.portrait
.
Local da rede
Muitos dispositivos do Android Automotive OS não implementam a pilha de telefonia usada
para fornecer a localização de rede e, portanto, não informam o
recurso do sistema android.hardware.location.network
. Embora a localização
da rede possa não estar disponível, o acesso à localização aproximada ainda é aceito.
Consulte Localização aproximada no Android Automotive OS.
Recursos de software
Alguns recursos de software que são comumente encontrados em outros formatos podem não ter suporte em dispositivos Android Automotive OS. Por exemplo, os seguintes recursos não estão disponíveis em muitos veículos com o Android Automotive OS:
Perguntas frequentes
Quais veículos têm o Google integrado?
Consulte o site Carros com o Google integrado para conferir uma lista de OEMs que têm modelos com o Google integrado. As especificações de hardware e outros detalhes do dispositivo podem ser encontrados usando o catálogo de dispositivos do Play Console.