Domyślnie większość usług samochodowych jest obowiązkowa i zawsze włączona. Możesz jednak oznaczyć podzbiór usług samochodowych jako opcjonalny, ponieważ niektóre funkcje mogą nie być obsługiwane w każdym samochodzie.
Lista funkcji opcjonalnych
Opcjonalne funkcje sterowania samochodem, które możesz włączać i wyłączać, znajdziesz w tabeli poniżej.
Funkcja sterowania samochodem | Wartość ciągu znaków |
---|---|
Usługa EVS w samochodzie | car_evs_service |
Eksperymentalna usługa ochrony kluczyków samochodowych | experimental_car_keyguard_service |
Usługa nawigacji samochodowej | car_navigation_service |
Usługa połączeń dla pasażerów samochodu | car_occupant_connection_service |
Usługa zdalnego dostępu do samochodu | car_remote_access_service |
Usługa zdalnego sterowania samochodem | car_remote_device_service |
Usługa telemetrii w samochodzie | car_telemetry_service |
Usługa powiadamiania użytkowników samochodów | com.android.car.user.CarUserNoticeService |
Usługa domowa klastra | cluster_home_service |
Usługa diagnostyczna | diagnostic |
Usługa wykrywania osób | occupant_awareness |
Usługa monitorowania miejsca na dane | storage_monitoring |
Usługa map dla pojazdów | vehicle_map_service |
Włączanie i wyłączanie funkcji sterowania samochodem
Obsługę funkcji w kompilacjach możesz kontrolować na 2 sposoby: za pomocą nakładek zasobów w czasie działania (RRO) lub warstwy abstrakcji sprzętu pojazdu (VHAL).
Używanie nakładek
Użyj konfiguracji zasobu o nazwie config_allowed_optional_car_features
, która zawiera listę wszystkich funkcji opcjonalnych, jakie możesz włączyć. Gdy samochód jest uruchamiany po raz pierwszy, odnotowywane są możliwe opcjonalne funkcje samochodu, które są włączane, jeśli nie znajdują się na liście zablokowanych w VHAL.
Więcej informacji o RRO znajdziesz w artykule Zmiana wartości zasobów aplikacji w czasie działania.
Korzystanie z VHAL
Warstwa abstrakcji sprzętu pojazdu (VHAL) kontroluje funkcje, służąc jako lista zablokowanych, która wyłącza określone funkcje opcjonalne. Właściwość VHAL o nazwie DISABLED_OPTIONAL_FEATURES
zawiera listę opcjonalnych funkcji nakładki, które mają zostać wyłączone. Jeśli ta właściwość nie istnieje, wszystkie opcjonalne funkcje z nakładek RRO są włączone. Więcej informacji o VHAL znajdziesz w omówieniu VHAL.
Używanie poleceń powłoki debugowania
Trzecim sposobem kontrolowania, które funkcje opcjonalne mają być włączone lub wyłączone, jest użycie pary poleceń powłoki, które są dostępne tylko w kompilacjach user-debug
i są przeznaczone dla programistów. Tabela w sekcji Lista funkcji opcjonalnych zawiera wartości, których należy użyć zamiast <FEATURE_STRING_VALUE>
.
Aby włączyć funkcję:
adb root; adb shell cmd car_service enable-feature <FEATURE_STRING_VALUE>; adb reboot
Aby wyłączyć funkcję:
adb root; adb shell cmd car_service disable-feature <FEATURE_STRING_VALUE>; adb reboot
Sprawdzanie, które funkcje są włączone
Podczas debugowania problemów związanych z określonymi funkcjami pomocne może być sprawdzenie, które funkcje są włączone i dlaczego. Aby zrzucić informacje o feature-related
, uruchom:
adb shell dumpsys car_service --services CarFeatureController
To polecenie wyświetla typy informacji wymienione poniżej.
Wartość | Opis |
---|---|
mEnabledFeatures |
Obecnie włączone funkcje. |
mDefaultEnabledFeaturesFromConfig |
Funkcje opcjonalne wymienione w config_allowed_optional_car_features . |
mDisabledFeaturesFromVhal |
Funkcje określone przez VHAL jako wyłączone we właściwości VHAL, DISABLED_OPTIONAL_FEATURES . |
mPendingEnabledFeatures |
Funkcje, które mają zostać włączone po ponownym uruchomieniu. |
mPendingDisabledFeatures |
Funkcje, które mają zostać wyłączone po ponownym uruchomieniu. |