Por padrão, a maioria dos serviços automotivos são obrigatórios e estão sempre ativados. No entanto, você pode designar um subconjunto de serviços de carro como opcional porque alguns recursos podem não ser compatíveis com todos os carros.
Lista de recursos opcionais
Os recursos opcionais de controle do carro que você pode ativar e desativar estão listados na tabela abaixo.
Recurso de controle do carro | Valor da sequência |
---|---|
Serviço EVS de carro | car_evs_service |
Serviço experimental de proteção de teclado para automóveis | experimental_car_keyguard_service |
Serviço de navegação automóvel | car_navigation_service |
Serviço de conexão de ocupantes de automóveis | car_occupant_connection_service |
Serviço de acesso remoto para carro | car_remote_access_service |
Serviço de dispositivo remoto para carro | car_remote_device_service |
Serviço de telemetria automotiva | car_telemetry_service |
Serviço de aviso ao usuário do carro | com.android.car.user.CarUserNoticeService |
Serviço doméstico de cluster | cluster_home_service |
Serviço de diagnóstico | diagnostic |
Serviço de conscientização dos ocupantes | occupant_awareness |
Serviço de monitoramento de armazenamento | storage_monitoring |
Serviço de mapas de veículos | vehicle_map_service |
Ativar e desativar recursos de controle do carro
Você pode controlar o suporte para recursos em suas compilações de duas maneiras: com sobreposições de recursos de tempo de execução (RROs) ou por meio da camada de abstração de hardware do veículo (VHAL).
Usar RROs
Use a configuração de recursos chamada config_allowed_optional_car_features
, que lista todos os recursos opcionais que você pode ativar. Quando um carro é inicializado pela primeira vez, possíveis recursos opcionais do carro são anotados e ativados se não estiverem na lista de bloqueio do VHAL. Para saber mais RROs, consulte Alterar o valor dos recursos de um aplicativo em tempo de execução.
Utilize o VHAL
A Camada de Abstração de Hardware do Veículo (VHAL) controla recursos servindo como uma lista de bloqueio para desabilitar recursos opcionais específicos. A propriedade VHAL denominada DISABLED_OPTIONAL_FEATURES
lista os recursos opcionais na sobreposição que devem ser desabilitados. Se esta propriedade não existir, então a lista de recursos opcionais dos RROs estará toda habilitada. Para saber mais sobre o VHAL, consulte a visão geral do VHAL .
Use comandos de depuração do shell
Uma terceira maneira de controlar quais recursos opcionais ativar ou desativar é através do uso de um par de comandos shell, que estão disponíveis apenas em compilações user-debug
e são fornecidos para uso pelos desenvolvedores. A tabela em Lista de recursos opcionais contém os valores a serem usados em vez de <FEATURE_STRING_VALUE>
.
Para ativar um recurso:
adb root; adb shell cmd car_service enable-feature <FEATURE_STRING_VALUE>; adb reboot
Para desativar um recurso:
adb root; adb shell cmd car_service disable-feature <FEATURE_STRING_VALUE>; adb reboot
Determine quais recursos estão habilitados
Ao depurar problemas relacionados a recursos específicos, pode ser útil saber quais recursos estão habilitados e por quê. Para despejar informações feature-related
, execute:
adb shell dumpsys car_service --services CarFeatureController
Este comando lista os tipos de informações mostrados abaixo.
Valor | Descrição |
---|---|
mEnabledFeatures | Recursos atualmente habilitados. |
mDefaultEnabledFeaturesFromConfig | Recursos opcionais listados em config_allowed_optional_car_features . |
mDisabledFeaturesFromVhal | Recursos especificados pelo VHAL para serem desabilitados na propriedade VHAL, DISABLED_OPTIONAL_FEATURES . |
mPendingEnabledFeatures | Recursos a serem ativados na reinicialização. |
mPendingDisabledFeatures | Recursos a serem desativados após uma reinicialização. |