يدعم VHAL جافا والبرامج الأصلية. خدمة السيارات هي الخدمة الوحيدة
برنامج Java لـ VHAL. وبالنسبة إلى تطبيقات السيارات العادية، يمكنك استخدام Car APIs (على سبيل المثال،
CarPropertyManager
)
إلى خصائص VHAL بدلاً من التواصل مباشرةً مع
VHAL. وفي الواقع، تحظر SELinux هذا. لمعرفة التفاصيل، يُرجى الاطّلاع على وثائق Car API على
فهرس الحزم:
بالنسبة إلى البرامج الأصلية، بدءًا من Android 13، استخدِم
libvhalclient
بدلاً من الانتقال مباشرةً
جارٍ الاتصال بـ VHAL. هذه مكتبة برامج تعرض واجهة مشتركة واحدة،
IVhalClient.h
لعمليات تنفيذ AIDL وHIDL VHAL. يوضح المثال التالي
كيفية إنشاء عميل VHAL أصلي واستخدامه للحصول على رقم تعريف المركبة (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