カーサービス機能の管理

デフォルトでは、ほとんどのカーサービスは必須であり常に有効になっています。ただし、一部の機能はすべての車ではサポートされていない可能性があるため、カーサービスのサブセットをオプションに指定できます。

オプション機能のリスト

有効または無効にできるオプションの自動車制御機能を以下の表に示します。

自動車制御機能 文字列値
自動車 EVS サービス 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 vehicle_map_service

自動車制御機能を有効または無効にする

ランタイム リソース オーバーレイ(RRO)か、Vehicle Hardware Abstraction Layer(VHAL)のいずれかを使用して、ビルド内の機能のサポートをコントロールできます。

RRO を使用する

有効にできるすべてのオプション機能をリストする config_allowed_optional_car_features というリソース構成を使用します。車が最初に起動される際に、可能な車のオプション機能が表示され、VHAL によってブロックリストに登録されていなければ有効になります。RRO について詳しくは、実行時にアプリのリソースの値を変更するをご覧ください。

VHAL を使用する

Vehicle Hardware Abstraction Layer(VHAL)は、特定のオプション機能を無効にするブロックリストとして、機能を制御します。DISABLED_OPTIONAL_FEATURES という VHAL プロパティは、無効にするオーバーレイのオプション機能をリストします。このプロパティが存在しない場合、RRO からのオプション機能のリストはすべて有効になります。VHAL について詳しくは、VHAL の概要をご覧ください。

デバッグ シェルコマンドを使う

どのオプション機能を有効または無効にするかを制御する 3 つ目の方法は、シェルコマンドのペアの使用です。これは、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 プロパティ DISABLED_OPTIONAL_FEATURES で、無効になるように VHAL に指定された機能。
mPendingEnabledFeatures 再起動時に有効になる機能。
mPendingDisabledFeatures 再起動時に無効になる機能。