כדי להעביר מימוש HIDL VHAL קיים ל- AIDL VHAL, השתמש במבנה ההטמעה של AIDL כדי ליישם את ממשק IVehicleHardware
.
אם יגיע גם יישום ה-HIDL הקיים יישום התייחסות HIDL , הספק הטמיע את מחלקת בעת הגירה מה-HIDL VHAL ל-AIDL VHAL, שקול את ההבדלים הללו. כתוצאה מכך, עליך לכלול את כל קבצי הכותרות עבור הסוגים הדרושים לך. קובץ עוזר, דוגמאות התוכן והקוד שבדף הזה כפופות לרישיונות המפורטים בקטע רישיון לתוכן. Java ו-OpenJDK הם סימנים מסחריים או סימנים מסחריים רשומים של חברת Oracle ו/או של השותפים העצמאיים שלה. עדכון אחרון: 2024-04-29 (שעון UTC).VehicleHal
. IVehicleHardware
דומה מאוד ל- VehicleHal
. HIDL VHAL AIDL VHAL 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
ויש להגדיר אותו כדגל במקום כ-enum. שדה דגל משתמש הוא מספר שלם הכולל מספר UserInfo.USER_FLAG_XXX
סיביות או ביחד.RawValue
ב- VehiclePropValue
שונה ל- RawPropValue
bytes
ב- RawValue
שונה שם ל- byteValues