إعدادات الموقع

يتم تحديد كلّ خاصيّة متوافقة من خلال إعدادات خاصيّة محدّدة من خلال بنية VehiclePropConfig وتتضمّن الحقول التالية.

الحقل الوصف
prop

معرّف الموقع يجب أن يكون هذا العنصر إما أحد خصائص النظام المحدّدة من خصائص النظام المتوافقة أو سمة خاصّة بالمورّد. يتم إنشاء رقم تعريف الموقع باستخدام عملية "أو" بين الحقول التالية (من اليمين إلى اليسار):

  • ‫(0x00000000) 16 بت: معرّف فريد من النطاق 0x0100 - 0xffff
  • ‫(0x00000000) 8 بت: أنواع المواقع التي تحدّد نوع الموقع
  • ‫(0x00000000) 4 بت: أنواع المناطق.
  • ‫(0x00000000) 4 بت: VehiclePropertyGroup> يشير ذلك إلى SYSTEM (0x10000000) أو VENDOR (0x20000000). اطّلِع على خصائص المورّدين للاطّلاع على الخصائص التي يمكنك تخصيصها.

على سبيل المثال،
INFO_VIN (0x11100100) = UniqueID (0x00000100) | VehiclePropertyType.STRING (0x00100000) | VehicleArea.GLOBAL (0x01000000) | VehiclePropertyGroup.SYSTEM (0x10000000)

access وضع الوصول إلى الموقع. يجب أن تكون إحدى القيم التالية: READ أو WRITE أو READ_WRITE. يجب أن يكون ذلك مساويًا لوضع الوصول المحدَّد في خصائص النظام المتوافقة.
changeMode
  • غيِّر الوضع للموقع. يجب أن تكون إحدى القيم التالية: STATIC ON_CHANGE أو CONTINUOUS. تعني STATIC أنّ قيمة السمة لن تتغيّر أبدًا بعد تشغيل النظام. تعني ON_CHANGE أنه يجب الإبلاغ عن VHAL عند تغيير القيمة. CONTINUOUS تعني أنّ قيمة الموقع تتغيّر باستمرار ويجب أن يُبلغ VHAL عن ذلك استنادًا إلى معدّل عيّنات الاشتراك.
  • يجب أن يكون وضع التغيير مساويًا لوضع التغيير المحدّد في خصائص النظام المتوافقة.
configArray مصفوفة اختيارية تحتوي على إعدادات خاصة بالموقع يمكن ترك هذا الحقل فارغًا.
configString سلسلة اختيارية تحتوي على إعدادات خاصة بالموقع الإلكتروني يمكن أن يكون الحقل فارغًا.
minSampleRate وmaxSampleRate

الحد الأدنى والأقصى لعدد عيّنات القياس المسموح به للخاصية المستمرة لا تُستخدم إذا لم تكن السمة مستمرة.

أنواع المواقع

تم تحديدها على أنّها قوائم أرقام مميزة في VehiclePropertyType.aidl. في ما يلي أنواع المواقع المتوافقة.

نوع الموقع القيمة الوصف
سلسلة 0x00100000 سمة سلسلة، تستخدِم حقل stringValue في قيمة سمة المركبة.
منطقية 0x00200000 السمة المنطقية، تستخدم العنصر الأول في الحقل int32Values في قيمة خاصية المركبة. 0 تعني false، وNone 0 تعني true.
INT32 0x00400000 سمة عدد صحيح: تستخدم العنصر الأول في الحقل int32Values في قيمة خاصية المركبة.
INT32_VEC 0x00410000 عدد صحيح[]، وتستخدم العناصر المتوفّرة في الحقل int32Values في قيمة خاصية المركبة.
INT64 0x00500000 سمة طويلة، تستخدِم العنصر الأول في حقل int64Values في قيمة سمة المركبة.
INT64_VEC 0x00510000 تستخدم السمة Long[] العناصر في حقل int64Values في قيمة سمة المركبة.
قيمة عائمة 0x00600000 سمة Float، تستخدِم العنصر الأول في حقل floatValues في قيمة سمة المركبة.
FLOAT_VEC 0x00610000 تستخدم سمة Float[] العناصر في حقل floatValues في قيمة سمة المركبة.
BYTES 0x00700000 تستخدم سمة byte[] العناصر في حقل byteValues في قيمة سمة Vehicle.
مختلط 0x00e00000 موقع من النوع المختلط أي مجموعة من الأنواع العددية أو المتجهة. يجب تحديد التنسيق الدقيق في صفيف الإعدادات في إعدادات الموقع.

بالنسبة إلى خصائص النوع MIXED الخاصة بالمورّد، يجب تنسيق configArray وفقًا للبنية التالية:

  • configArray[0]، يشير 1 إلى أنّ السمة لها قيمة سلسلة
  • configArray[1]، 1 تشير إلى أنّ السمة لها قيمة منطقية
  • configArray[2], 1 تشير إلى أنّ السمة لها قيمة عددية
  • configArray[3]، يشير الرقم إلى حجم Integer[] في السمة
  • configArray[4]، 1 تشير إلى أنّ السمة لها قيمة Long
  • configArray[5]، يشير الرقم إلى حجم Long[] في السمة
  • configArray[6]، 1 تشير إلى أنّ السمة لها قيمة Float
  • configArray[7]، يشير الرقم إلى حجم Float[] في السمة
  • configArray[8]، يشير الرقم إلى حجم byte[] في السمة.

على سبيل المثال، يشير الرمز configArray = {1, 1, 1, 3, 0, 0, 0, 0, 0} إلى أنّ السمة تحتوي على قيمة سلسلة وقيمة منطقية وقيمة عدد صحيح وصفيف يحتوي على ثلاثة أعداد صحيحة.

ضبط رقم تعريف المنطقة

قد يحتوي كل إعداد موقع أيضًا على قائمة بإعدادات رقم تعريف المنطقة. وهذه القائمة اختيارية للمواقع العالمية ومطلوبة للمواقع المخصّصة لمناطق معيّنة (المواقع التي تضم مناطق متوافقة متعددة). تحتوي كل عملية إعداد لمعرّف منطقة على الحقول التالية.

الحقل الوصف
areaId رقم تعريف هذه المنطقة. راجع أرقام تعريف المناطق.
minInt32Value وmaxInt32Value
  • الحد الأدنى والأقصى للقيمة اختياريان للخصائص من النوع INT32. يتم تجاهلها لجميع الأنواع الأخرى. يتم تجاهله إذا كانت كلتا القيمتَين 0.
  • بالنسبة إلى الموقع الشامل، إذا كان يجب تحديد الحد الأدنى والحد الأقصى للقيمة، يجب استخدام إعداد منطقة واحد مع رقم تعريف المنطقة 0.
minInt64Value وmaxInt64Value
  • قيمة اختيارية للحد الأدنى والحد الأقصى للسمات من النوع INT64. يتم تجاهلها لجميع الأنواع الأخرى. يتم تجاهل ذلك إذا كان كلاهما 0.
  • بالنسبة إلى الموقع الشامل، إذا كان يجب تحديد الحد الأدنى والحد الأقصى للقيمة، يجب استخدام إعداد منطقة واحد مع رقم تعريف المنطقة 0.
minFloatValue وmaxFloatValue
  • الحد الأدنى والأقصى للقيمة اختياريان للخصائص من النوع Float. يتم تجاهلها لجميع الأنواع الأخرى. يتم تجاهله إذا كانت كلتا القيمتَين 0.0.
  • بالنسبة إلى الموقع الشامل، إذا كان يجب تحديد الحد الأدنى والحد الأقصى للقيمة، يجب استخدام إعداد منطقة واحد مع رقم تعريف المنطقة 0.
(ميزة جديدة في Android 14)
supportedEnumValues
  • قائمة اختيارية بالقيم المسموح بها إذا تم تعريف السمة على أنّها سمة نوع ملف شخصي. إذا لم يتم تحديد قيمة (فارغة) أو قبل Android 14، يُفترض أنّه يمكن استخدام كل قيم التعداد.
  • بالنسبة إلى الموقع العام، إذا كان من الضروري تحديد قيم النطاق المحدَّد، يجب استخدام إعداد واحد للمنطقة بمعرّف المنطقة 0.

أنواع المناطق

تم تحديدها على أنّها قوائم أرقام مميزة في VehicleArea.aidl. في ما يلي أنواع المناطق المتوافقة.

نوع المنطقة القيمة الوصف
البلدان المتحدثة 0x01000000 هذا الموقع ملكية عالمية ولا يحتوي على مناطق متعددة.
نافذة 0x03000000 المساحة استنادًا إلى النوافذ، وتستخدم تعداد VehicleAreaWindow.
MIRROR 0x04000000 المنطقة المستندة إلى المرايا، تستخدِم VehicleAreaMirror enum.
سيات 0x05000000 المنطقة استنادًا إلى المقاعد، تستخدم VehicleAreaSeat enum.
باب 0x06000000 المنطقة المستندة إلى الأبواب، تستخدِم VehicleAreaDoor enum.
عجلة 0x07000000 المنطقة المستندة إلى العجلات، تستخدِم VehicleAreaWheel enum.

يجب أن يستخدم كل موقع مصنّف حسب المنطقة نوع منطقة محدّدًا مسبقًا. يحتوي كل نوع منطقة على مجموعة من علامات البت المحدّدة في قائمة أرقام صحيحة لنوع المنطقة. على سبيل المثال، تحدِّد منطقة SEAT VehicleAreaSeat قوائم القيم المحدَّدة مسبقًا:

  • ROW_1_LEFT = 0x0001
  • ROW_1_CENTER = 0x0002
  • ROW_1_RIGHT = 0x0004
  • ROW_2_LEFT = 0x0010
  • ROW_2_CENTER = 0x0020
  • ROW_2_RIGHT = 0x0040
  • ROW_3_LEFT = 0x0100
  • ...

أرقام تعريف المناطق

يتمّ تحديد المواقع الجغرافية المحدّدة بمناطق معيّنة من خلال أرقام تعريف المناطق. يمكن أن تتيح كل خاصية مقسّمة حسب المنطقة توفّر رقم تعريف منطقة واحد أو أكثر. يتألّف رقم تعريف المنطقة من علامة واحدة أو أكثر من التعداد المعنيّ. على سبيل المثال، قد يستخدم موقع يستخدم VehicleAreaSeat معرّفات المناطق التالية:

اسم الوصف
ROW_1_LEFT | ROW_1_RIGHT ينطبق رقم تعريف المنطقة على كلا المقعدَين الأماميَين.
ROW_2_LEFT ينطبق هذا الإعداد على المقعد الخلفي الأيسر فقط.
ROW_2_RIGHT لا ينطبق ذلك إلا على المقعد الأيمن الخلفي.

لمزيد من المعلومات، يُرجى الاطّلاع على التدفئة والتهوية وتكييف الهواء.