Kontrol fitur layanan mobil

Secara default, sebagian besar layanan mobil bersifat wajib dan selalu diaktifkan. Namun, Anda dapat menetapkan subset layanan mobil menjadi opsional karena beberapa fitur mungkin tidak didukung di setiap mobil.

Daftar fitur opsional

Fitur kontrol mobil opsional yang dapat Anda aktifkan dan nonaktifkan tercantum dalam tabel di bawah.

Fitur kontrol mobil Nilai string
Layanan EVS mobil car_evs_service
Layanan pelindung tombol eksperimental mobil experimental_car_keyguard_service
Layanan navigasi mobil car_navigation_service
Layanan koneksi penghuni mobil car_occupant_connection_service
Layanan akses jarak jauh mobil car_remote_access_service
Layanan perangkat remote mobil car_remote_device_service
Layanan telemetri mobil car_telemetry_service
Layanan pemberitahuan pengguna mobil com.android.car.user.CarUserNoticeService
Layanan rumah cluster cluster_home_service
Layanan diagnostik diagnostic
Layanan awareness penumpang occupant_awareness
Layanan pemantauan penyimpanan storage_monitoring
Layanan peta kendaraan vehicle_map_service

Mengaktifkan dan menonaktifkan fitur kontrol mobil

Anda dapat mengontrol dukungan untuk fitur dalam build dengan salah satu dari dua cara, yaitu dengan overlay resource runtime (RRO) atau melalui Vehicle Hardware Abstraction Layer (VHAL).

Menggunakan RRO

Gunakan konfigurasi resource bernama config_allowed_optional_car_features, yang mencantumkan semua fitur opsional yang dapat Anda aktifkan. Saat mobil pertama kali di-booting, kemungkinan fitur mobil opsional dicatat dan diaktifkan jika tidak diblokir oleh VHAL. Untuk mempelajari lebih lanjut RRO, lihat Mengubah nilai resource aplikasi saat runtime.

Menggunakan VHAL

Vehicle Hardware Abstraction Layer (VHAL) mengontrol fitur dengan berfungsi sebagai daftar yang tidak diizinkan untuk menonaktifkan fitur opsional tertentu. Properti VHAL bernama DISABLED_OPTIONAL_FEATURES mencantumkan fitur opsional di overlay yang akan dinonaktifkan. Jika properti ini tidak ada, semua daftar fitur opsional dari RRO akan diaktifkan. Untuk mempelajari VHAL lebih lanjut, lihat Ringkasan VHAL.

Menggunakan perintah shell debug

Cara ketiga untuk mengontrol fitur opsional yang akan diaktifkan atau dinonaktifkan adalah melalui penggunaan pasangan perintah shell, yang hanya tersedia di build user-debug dan disediakan untuk digunakan oleh developer. Tabel di Daftar fitur opsional berisi nilai yang akan digunakan, bukan <FEATURE_STRING_VALUE>.

Untuk mengaktifkan fitur:

adb root; adb shell cmd car_service enable-feature <FEATURE_STRING_VALUE>; adb reboot

Untuk menonaktifkan fitur:

adb root; adb shell cmd car_service disable-feature <FEATURE_STRING_VALUE>; adb reboot

Menentukan fitur yang diaktifkan

Saat men-debug masalah terkait fitur tertentu, sebaiknya ketahui fitur mana yang diaktifkan dan alasannya. Untuk mengekstrak informasi feature-related, jalankan:

adb shell dumpsys car_service --services CarFeatureController

Perintah ini mencantumkan jenis informasi yang ditampilkan di bawah.

Nilai Deskripsi
mEnabledFeatures Fitur yang saat ini diaktifkan.
mDefaultEnabledFeaturesFromConfig Fitur opsional yang tercantum di config_allowed_optional_car_features.
mDisabledFeaturesFromVhal Fitur yang ditentukan oleh VHAL agar dinonaktifkan di properti VHAL, DISABLED_OPTIONAL_FEATURES.
mPendingEnabledFeatures Fitur yang akan diaktifkan saat perangkat dimulai ulang.
mPendingDisabledFeatures Fitur yang akan dinonaktifkan setelah perangkat di-reboot.