Die meisten Dienste für Autos sind standardmäßig obligatorisch und immer aktiviert. Sie können jedoch einen Teil der Autodienste als optional kennzeichnen, 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 folgenden Tabelle aufgeführt.
Autosteuerungsfunktion | Stringwert |
---|---|
Car EVS Service | car_evs_service |
Experimenteller Keyguard-Dienst für Autos | experimental_car_keyguard_service |
Navigationsdienst für Autos | car_navigation_service |
Insassenverbindungsdienst | car_occupant_connection_service |
Dienst für den Fernzugriff auf Ihr Auto | car_remote_access_service |
Dienst für Autofernbedienung | car_remote_device_service |
Telemetriedienst des Autos | car_telemetry_service |
Dienst für Benachrichtigungen an Autonutzer | com.android.car.user.CarUserNoticeService |
Cluster Home-Dienst | 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 von 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
. Dort sind alle optionalen Funktionen aufgeführt, die Sie aktivieren können. Wenn ein Auto zum ersten Mal gestartet wird, werden mögliche optionale Fahrzeugfunktionen erkannt und aktiviert, sofern sie nicht von der VHAL auf die Blockierungsliste gesetzt wurden.
Weitere Informationen zu RROs finden Sie unter Wert der Ressourcen einer App zur Laufzeit ändern.
VHAL verwenden
Die Vehicle Hardware Abstraction Layer (VHAL) steuert Funktionen, indem sie als Sperrliste dient, um bestimmte optionale Funktionen zu deaktivieren. In der VHAL-Property namens DISABLED_OPTIONAL_FEATURES
sind die optionalen Funktionen im Overlay aufgeführt, die deaktiviert werden sollen. Wenn diese Eigenschaft nicht vorhanden ist, sind alle optionalen Funktionen aus den RROs aktiviert. Weitere Informationen zu VHAL finden Sie unter VHAL – Übersicht.
Debug-Shell-Befehle verwenden
Eine dritte Möglichkeit, optionale Funktionen zu aktivieren oder zu deaktivieren, besteht in der Verwendung von zwei Shell-Befehlen, die nur in user-debug
-Builds verfügbar sind und für Entwickler gedacht sind. Die Tabelle in Liste der optionalen Funktionen enthält die Werte, die anstelle von <FEATURE_STRING_VALUE>
verwendet werden sollen.
So aktivieren Sie eine Funktion:
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
Prüfen, welche Funktionen aktiviert sind
Bei der Fehlerbehebung 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 zu dumpen:
adb shell dumpsys car_service --services CarFeatureController
Dieser Befehl listet die unten aufgeführten Arten von Informationen auf.
Wert | Beschreibung |
---|---|
mEnabledFeatures |
Derzeit aktivierte Funktionen. |
mDefaultEnabledFeaturesFromConfig |
Optionale Funktionen, die unter config_allowed_optional_car_features aufgeführt sind. |
mDisabledFeaturesFromVhal |
Von der VHAL angegebene Funktionen, die in der VHAL-Property DISABLED_OPTIONAL_FEATURES deaktiviert werden sollen. |
mPendingEnabledFeatures |
Funktionen, die nach einem Neustart aktiviert werden sollen. |
mPendingDisabledFeatures |
Funktionen, die nach einem Neustart deaktiviert werden sollen. |