Die meisten Autodienste sind standardmäßig obligatorisch und immer aktiviert. Sie können jedoch eine Teilmenge der Autoservices als optional festlegen, da einige Funktionen möglicherweise nicht in jedem Auto unterstützt werden.
Liste der optionalen Funktionen
Die optionalen Funktionen zur Fahrzeugsteuerung, die Sie aktivieren und deaktivieren können, sind in der Tabelle unten aufgeführt.
Funktion zur Fahrzeugsteuerung | Stringwert |
---|---|
Car EVS Service | car_evs_service |
Experimenteller Autoschlüssel-Schutzdienst | experimental_car_keyguard_service |
Fahrzeugnavigationsdienst | car_navigation_service |
Verbindungsdienst für Fahrzeuginsassen | car_occupant_connection_service |
Fernzugriff auf das Auto | car_remote_access_service |
Service für Autoschlüssel | car_remote_device_service |
Telemetriedienst des Autos | car_telemetry_service |
Benachrichtigungsdienst für Autofahrer | com.android.car.user.CarUserNoticeService |
Dienst für das Zuhause-Cluster | cluster_home_service |
Diagnosedienst | diagnostic |
Occupant Awareness Service | occupant_awareness |
Speicherüberwachungsdienst | storage_monitoring |
Fahrzeugkartendienst | vehicle_map_service |
Funktionen zur Autosteuerung aktivieren und deaktivieren
Sie können die Unterstützung für Funktionen in Ihren Builds auf zwei Arten steuern: entweder mit Laufzeit-Ressourcen-Overlays (RROs) oder über die Vehicle Hardware Abstraction Layer (VHAL).
RROs verwenden
Verwenden Sie die Ressourcenkonfiguration mit dem Namen config_allowed_optional_car_features
, in der alle optionalen Funktionen aufgeführt sind, die Sie aktivieren können. Beim ersten Starten eines Autos werden mögliche optionale Funktionen des Autos erkannt und aktiviert, sofern sie nicht von der VHAL auf der Sperrliste stehen.
Weitere Informationen zu RROs finden Sie unter Den Wert der Ressourcen einer App zur Laufzeit ändern.
VHAL verwenden
Der Vehicle Hardware Abstraction Layer (VHAL) steuert Funktionen, indem er als Sperrliste zum Deaktivieren bestimmter optionaler Funktionen dient. Die VHAL-Property mit dem Namen DISABLED_OPTIONAL_FEATURES
listet die optionalen Funktionen im Overlay auf, die deaktiviert werden sollen. Wenn diese Eigenschaft nicht vorhanden ist, sind alle optionalen Funktionen aus den RROs aktiviert. Weitere Informationen zum VHAL finden Sie in der VHAL-Übersicht.
Debug-Shell-Befehle verwenden
Eine dritte Möglichkeit, optionale Funktionen zu aktivieren oder zu deaktivieren, ist die Verwendung eines Paars von Shell-Befehlen, die nur in user-debug
-Builds verfügbar sind und von Entwicklern verwendet werden können. Die Tabelle in Liste der optionalen Funktionen enthält die Werte, die anstelle von <FEATURE_STRING_VALUE>
verwendet werden sollen.
So aktivieren Sie ein Feature:
adb root; adb shell cmd car_service enable-feature <FEATURE_STRING_VALUE>; adb reboot
So deaktivieren Sie eine Funktion:
adb root; adb shell cmd car_service disable-feature <FEATURE_STRING_VALUE>; adb reboot
Ermitteln, welche Funktionen aktiviert sind
Beim Debuggen von Problemen im Zusammenhang mit bestimmten Funktionen kann es hilfreich sein, zu wissen, welche Funktionen aktiviert sind und warum. Führen Sie Folgendes aus, um feature-related
-Informationen auszugeben:
adb shell dumpsys car_service --services CarFeatureController
Mit diesem Befehl werden die unten aufgeführten Informationen angezeigt.
Wert | Beschreibung |
---|---|
mEnabledFeatures |
Derzeit aktivierte Funktionen. |
mDefaultEnabledFeaturesFromConfig |
Optionale Funktionen, die in config_allowed_optional_car_features aufgeführt sind. |
mDisabledFeaturesFromVhal |
Funktionen, die von der VHAL als deaktiviert angegeben werden, in der VHAL-Eigenschaft DISABLED_OPTIONAL_FEATURES . |
mPendingEnabledFeatures |
Funktionen, die nach einem Neustart aktiviert werden sollen. |
mPendingDisabledFeatures |
Funktionen, die nach einem Neustart deaktiviert werden sollen. |