VHAL hỗ trợ ứng dụng Java và ứng dụng gốc. Dịch vụ ô tô là dịch vụ duy nhất
Ứng dụng Java cho VHAL. Đối với các ứng dụng thường dùng cho ô tô, hãy dùng API cho Ô tô (ví dụ:
CarPropertyManager
)
để truy cập vào các thuộc tính VHAL thay vì giao tiếp trực tiếp với
VHAL. Trên thực tế, SELinux chặn điều này. Để biết thông tin chi tiết, vui lòng xem tài liệu về Car API tại
Package Index (Chỉ mục gói).
Đối với ứng dụng gốc, kể từ Android 13, hãy sử dụng
libvhalclient
thay vì cài đặt trực tiếp
kết nối với VHAL. Đây là thư viện ứng dụng cho thấy một giao diện chung,
IVhalClient.h
để triển khai AIDL và HIDL VHAL. Ví dụ sau cho thấy
cách tạo ứng dụng gốc VHAL và sử dụng ứng dụng đó để nhận số nhận dạng xe (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