По умолчанию большинство автомобильных сервисов являются обязательными и всегда включены. Однако вы можете сделать некоторые из них необязательными , поскольку некоторые функции могут поддерживаться не во всех автомобилях.
Список дополнительных функций
Дополнительные функции управления автомобилем, которые можно включить и отключить, перечислены в таблице ниже.
| Функция управления автомобилем | Строковое значение | 
|---|---|
| Сервис электромобилей |  car_evs_service | 
| Экспериментальная служба защиты ключей для автомобилей |  experimental_car_keyguard_service | 
| Автомобильная навигационная служба |  car_navigation_service | 
| Служба связи с пассажирами автомобиля |  car_occupant_connection_service | 
| Служба удаленного доступа к автомобилю |  car_remote_access_service | 
| Обслуживание автомобильного дистанционного устройства |  car_remote_device_service | 
| Служба автомобильной телеметрии |  car_telemetry_service | 
| Служба уведомления пользователей автомобилей |  com.android.car.user.CarUserNoticeService | 
| Кластерный домашний сервис |  cluster_home_service | 
| Диагностическая служба |  diagnostic | 
| Служба осведомленности жильцов |  occupant_awareness | 
| Служба мониторинга хранилищ |  storage_monitoring | 
| Сервис карт транспортных средств |  vehicle_map_service | 
Включение и отключение функций управления автомобилем
Вы можете контролировать поддержку функций в своих сборках одним из двух способов: либо с помощью наложений ресурсов времени выполнения (RRO), либо через уровень абстракции оборудования транспортного средства (VHAL).
Использовать RRO
 Используйте конфигурацию ресурса config_allowed_optional_car_features , в которой перечислены все дополнительные функции, которые можно включить. При первой загрузке автомобиля возможные дополнительные функции автомобиля отмечаются и включаются, если они не заблокированы VHAL. Подробнее об RRO см. в разделе Изменение значения ресурсов приложения во время выполнения.
Используйте VHAL
 Уровень абстракции оборудования транспортного средства (VHAL) управляет функциями, выступая в качестве списка блокировки для отключения определенных дополнительных функций. Свойство VHAL DISABLED_OPTIONAL_FEATURES перечисляет дополнительные функции в оверлее, которые необходимо отключить. Если это свойство отсутствует, то включаются все дополнительные функции из списка RRO. Подробнее о VHAL см. в обзоре VHAL .
Используйте команды отладочной оболочки
 Третий способ управления включением или отключением дополнительных функций — использование пары команд оболочки, которые доступны только в сборках user-debug и предоставляются разработчикам. Таблица в разделе «Список дополнительных функций» содержит значения, которые следует использовать вместо <FEATURE_STRING_VALUE> .
Чтобы включить функцию:
adb root; adb shell cmd car_service enable-feature <FEATURE_STRING_VALUE>; adb reboot
Чтобы отключить функцию:
adb root; adb shell cmd car_service disable-feature <FEATURE_STRING_VALUE>; adb reboot
Определите, какие функции включены
 При отладке проблем, связанных с определёнными функциями, может быть полезно знать, какие функции включены и почему. Чтобы вывести информацию feature-related , выполните:
adb shell dumpsys car_service --services CarFeatureController
Эта команда выводит список типов информации, показанных ниже.
| Ценить | Описание | 
|---|---|
 mEnabledFeatures | В настоящее время включены функции. | 
 mDefaultEnabledFeaturesFromConfig |  Дополнительные функции перечислены в config_allowed_optional_car_features . | 
 mDisabledFeaturesFromVhal |  Функции, указанные VHAL как отключенные в свойстве VHAL, DISABLED_OPTIONAL_FEATURES . | 
 mPendingEnabledFeatures | Функции, которые будут включены после перезагрузки. | 
 mPendingDisabledFeatures | Функции, которые следует отключить после перезагрузки. |