หากต้องการย้ายการใช้งาน HIDL VHAL ที่มีอยู่ไปยัง AIDL VHAL ให้ใช้โครงสร้าง การใช้งานอ้างอิง AIDL เพื่อใช้อินเทอร์เฟซ IVehicleHardware
หากการใช้งาน HIDL ที่มีอยู่ตามมาด้วย การใช้งานอ้างอิง HIDL ผู้ขายได้ใช้คลาส เมื่อย้ายจาก HIDL VHAL ไปยัง AIDL VHAL ให้พิจารณาความแตกต่างเหล่านี้ ด้วยเหตุนี้ คุณจะต้องรวมไฟล์ส่วนหัวทั้งหมดตามประเภทที่คุณต้องการ ไฟล์ตัวช่วย ตัวอย่างเนื้อหาและโค้ดในหน้าเว็บนี้ขึ้นอยู่กับใบอนุญาตที่อธิบายไว้ในใบอนุญาตการใช้เนื้อหา Java และ OpenJDK เป็นเครื่องหมายการค้าหรือเครื่องหมายการค้าจดทะเบียนของ Oracle และ/หรือบริษัทในเครือ อัปเดตล่าสุด 2024-04-29 UTCVehicleHal
IVehicleHardware
คล้ายกับ VehicleHal
มาก HIDL VHAL AIDL วาฮาล getAllPropertyConfigs()
เช่นเดียวกับ VehicleHal.listProperties()
getValues(callback, requests)
สามารถเรียก VehicleHal.get()
สำหรับแต่ละคำขอและสามารถโทรกลับได้ dump()
เช่นเดียวกับ VehicleHal.dump()
checkHealth()
สามารถคืน VehicleHal.get()
ได้ registerPropertyChangeCallback()
คล้ายกับการตั้งค่า VehicleHal.mOnHalEvent
พิมพ์ความแตกต่างใน AIDL
types.h
) สำหรับทุกประเภทที่สร้างจาก types.hal
AIDL สร้างไฟล์ส่วนหัวหนึ่งไฟล์สำหรับแต่ละประเภท ตัวอย่างเช่น VehiclePropValue.h
จาก VehiclePropValue.aidl
VehicleHalTypes.h
ในไลบรารี VehicleHalUtils
มีประเภททั่วไปส่วนใหญ่ แทน ... ใช้ hidl_vec
std::vector
hidl_string
std::string
android::sp
std::shared_ptr
android::wp
std::weak_ptr
types.hal
จะเหมือนกันใน AIDL ยกเว้น :SubscribeFlags
จะถูกลบออกเนื่องจากไม่ได้ใช้เนื่องจาก onPropertySet
ถูกลบออกUserFlags
ถูกกำหนดไว้ใน UserInfo.aidl
แล้ว และควรกำหนดเป็นค่าสถานะแทนการแจงนับ ฟิลด์ค่าสถานะผู้ใช้เป็นจำนวนเต็มที่มี UserInfo.USER_FLAG_XXX
หลายบิตหรือรวมกันRawValue
ใน VehiclePropValue
ถูกเปลี่ยนชื่อเป็น RawPropValue
bytes
ใน RawValue
ถูกเปลี่ยนชื่อเป็น byteValues