اعتبارًا من 27 آذار (مارس) 2025، ننصحك باستخدام android-latest-release بدلاً من aosp-main لإنشاء AOSP والمساهمة فيه. لمزيد من المعلومات، يُرجى الاطّلاع على التغييرات في AOSP.
تنظيم صفحاتك في مجموعات
يمكنك حفظ المحتوى وتصنيفه حسب إعداداتك المفضّلة.
تحدِّد واجهة طبقة تجريد أجهزة المركبات (VHAL) السمات التي يمكن للمصنّعين الأصليين للسيارات
تنفيذها، كما تحتوي على البيانات الوصفية للسمة. على سبيل المثال، ما إذا كان السمة عددًا صحيحًا
أو أوضاع التغيير المسموح بها. تستند واجهة VHAL إلى الوصول إلى خاصية (القراءة والكتابة
والاشتراك) وهي تعبير مجرد لدالة معيّنة.
في الإصدار 13 من نظام التشغيل Android والإصدارات الأحدث، تم نقل VHAL إلى AIDL في IVehicle.aidl
في الإصدار 12 من Android والإصدارات الأقدم، يتم تعريف VHAL بلغة HIDL في IVehicle.hal
تتوافق واجهة برمجة التطبيقات CarService والمكونات الأصلية لنظام التشغيل Android مع الواجهة الخلفية HIDL وAIDL، وتفضّل الواجهة الخلفية AIDL
عند توفّرها.
إرشادات
الوصف
يُنصح بشدة
بالنسبة إلى عمليات تنفيذ HIDL VHAL الحالية، عليك نقل البيانات إلى واجهة AIDL
الأحدث.
يجب
بالنسبة إلى عمليات تنفيذ الإصدار الجديد من VHAL، استخدِم واجهة AIDL.
لمزيد من المعلومات عن VHAL، يُرجى الاطّلاع على الصفحات التالية:
يخضع كل من المحتوى وعيّنات التعليمات البرمجية في هذه الصفحة للتراخيص الموضحّة في ترخيص استخدام المحتوى. إنّ Java وOpenJDK هما علامتان تجاريتان مسجَّلتان لشركة Oracle و/أو الشركات التابعة لها.
تاريخ التعديل الأخير: 2025-07-27 (حسب التوقيت العالمي المتفَّق عليه)
[[["يسهُل فهم المحتوى.","easyToUnderstand","thumb-up"],["ساعَدني المحتوى في حلّ مشكلتي.","solvedMyProblem","thumb-up"],["غير ذلك","otherUp","thumb-up"]],[["لا يحتوي على المعلومات التي أحتاج إليها.","missingTheInformationINeed","thumb-down"],["الخطوات معقدة للغاية / كثيرة جدًا.","tooComplicatedTooManySteps","thumb-down"],["المحتوى قديم.","outOfDate","thumb-down"],["ثمة مشكلة في الترجمة.","translationIssue","thumb-down"],["مشكلة في العيّنات / التعليمات البرمجية","samplesCodeIssue","thumb-down"],["غير ذلك","otherDown","thumb-down"]],["تاريخ التعديل الأخير: 2025-07-27 (حسب التوقيت العالمي المتفَّق عليه)"],[],[],null,["# Overview\n\nThe vehicle hardware abstraction layer (VHAL) interface defines the properties OEMs can\nimplement and contains property metadata. For example, whether a property is an integer and\nwhich change modes are allowed. The VHAL interface is based on accessing (reading, writing, and\nsubscribing) a property, which is an abstraction for a specific function.\n\n- In Android 13 and higher, VHAL migrated to AIDL at `IVehicle.aidl`\n- In Android 12 and lower, VHAL is defined with HIDL language in `IVehicle.hal`\n\n| **Note:** All new features, including new property definitions, will be added to the AIDL interface **only.**\n\nCarService and Android native components support HIDL and AIDL backend and prefer the AIDL\nbackend when it's available.\n\n| Guidance | Description |\n|--------------------|----------------------------------------------------------------------------------|\n| STRONGLY RECOMMEND | For **existing** HIDL VHAL implementations, migrate to the newer AIDL interface. |\n| MUST | For **new** VHAL implementations, use the AIDL interface. |\n\n\nTo learn more about the VHAL, see these pages:\n\n- [VHAL interface](/docs/automotive/vhal/vhal-interface)\n[](/docs/automotive/vhal/vhal-interface)\n- [](/docs/automotive/vhal/vhal-interface)[Property configurations](/docs/automotive/vhal/property-configuration)\n[](/docs/automotive/vhal/property-configuration)\n- [](/docs/automotive/vhal/property-configuration)[Supported system properties](/docs/automotive/vhal/system-properties)\n[](/docs/automotive/vhal/system-properties)\n- [](/docs/automotive/vhal/system-properties)[Special properties](/docs/automotive/vhal/special-properties)\n[](/docs/automotive/vhal/special-properties)\n- [](/docs/automotive/vhal/special-properties)[SEAT and STEERING_WHEEL properties](/docs/automotive/vhal/seat-steering)\n[](/docs/automotive/vhal/seat-steering)\n- [](/docs/automotive/vhal/seat-steering)[ADAS properties](/docs/automotive/vhal/adas-properties)\n[](/docs/automotive/vhal/adas-properties)\n- [](/docs/automotive/vhal/adas-properties)[Reference implementation](/docs/automotive/vhal/reference-implementation)\n[](/docs/automotive/vhal/reference-implementation)\n- [](/docs/automotive/vhal/reference-implementation)[Debug the VHAL](/docs/automotive/vhal/vhal_debug)\n[](/docs/automotive/vhal/vhal_debug)\n- [](/docs/automotive/vhal/vhal_debug)[Use VHAL with the native client](/docs/automotive/vhal/native-client)\n[](/docs/automotive/vhal/native-client)\n- [](/docs/automotive/vhal/native-client)[HIDL VHAL migration guide](/docs/automotive/vhal/hidl-vhal-migration)\n- [HIDL VHAL interface](/docs/automotive/vhal/hidl-vhal-interface)"]]