VHAL mendukung klien Java dan native. Layanan Mobil adalah satu-satunya
Klien Java untuk VHAL. Untuk umumnya aplikasi mobil, gunakan Car API (misalnya,
CarPropertyManager
)
mengakses properti VHAL daripada
berkomunikasi secara langsung dengan
VHAL. Bahkan, SELinux memblokir ini. Untuk detailnya, lihat dokumentasi Car API di
Indeks Paket.
Untuk klien native, mulai dari Android 13, gunakan
libvhalclient
, bukan secara langsung
menghubungkan dengan VHAL. Ini adalah library klien yang mengekspos
satu antarmuka umum,
IVhalClient.h
untuk implementasi AIDL dan HIDL VHAL. Contoh berikut menunjukkan
cara membuat klien asli VHAL dan menggunakannya untuk mendapatkan nomor Nomor Identifikasi Kendaraan (VIN):
using ::aidl::android::hardware::automotive::vehicle::VehicleProperty; using ::android::frameworks::automotive::vhal::IVhalClient; using ::android::hardware::automotive::vehicle::toInt; auto vhalClient = IVhalClient::tryCreate(); if (vhalClient == nullptr) { // handle error. } auto result = vhalClient->getValueSync( *vhalClient->createHalPropValue(toInt(VehicleProperty::INFO_VIN))); // Use result