نظرة عامة على الإعدادات

يوفّر AOSP الخيارات التالية لتخزين معلومات الضبط على الجهاز:

  • خصائص النظام
  • خصائص طبقة تجريد الأجهزة (HAL)
  • ملفات XML لإعدادات النظام
  • تراكب الموارد (الثابتة ووقت التشغيل)

خصائص النظام

خصائص النظام هي أزواج مفاتيح/قيم سلاسل يتم تخزينها في القاموس الشامل build.prop. خصائص النظام هي موارد على مستوى النظام يسهل استخدامها وتؤدي إلى انخفاض الأداء. عند استخدام خصائص النظام، لا تحتاج إلى استخدام الاتصال البيني للعمليات (IPC) حتى إذا تمت مشاركة خاصية نظام عبر عمليات متعددة. ومع ذلك، تشبه خصائص النظام المتغيّرات العموميّة ويمكن أن تكون ضارة عند إساءة استخدامها. يمكن أن يؤدي إساءة استخدام مَعلمات النظام إلى حدوث مشاكل، مثل ثغرات أمنية وعدم تمكّن المستخدمين من استخدام التطبيقات. قبل استخدام خصائص النظام لتخزين معلومات الإعداد، ننصحك بالاطّلاع على خيارات الإعداد الأخرى.

لمزيد من المعلومات حول خصائص النظام، راجِع إضافة خصائص النظام.

خصائص HAL

عندما يكون مصدر صحة التهيئة هو مكون جهاز على أحد الأجهزة، يجب أن توفر طبقة تجريد الأجهزة (HAL) معلومات لهذا المكون. حدِّد طريقة HAL جديدة في HAL الحالية للوصول إلى الإعدادات. لمزيد من المعلومات حول تطوير HAL، يُرجى الاطّلاع على AIDL لواجهة HAL.

ملفات XML الخاصة بإعدادات النظام

عندما تكون بيانات الضبط ثابتة ولكنّها معقّدة (منظَّمة)، ننصحك باستخدام تنسيق XML أو تنسيقات أخرى مشابهة لبيانات الضبط. تأكَّد من أنّ مخطّط الملف يظل ثابتًا. بالنسبة إلى ملفات XML، يمكنك استخدام xsd_config للحفاظ على ثبات المخطّط والاستفادة من معالج XML التلقائي.

تراكب الموارد

يمكنك استخدام تراكبات الموارد لتخصيص منتج. هناك نوعان من العناصر التي تظهر فوق الموارد:

  • تراكب موارد عادي يُستخدَم لتخصيص منتج في وقت الإصدار للحصول على معلومات عن تراكب الموارد العادية، يُرجى الاطّلاع على تخصيص الإصدار باستخدام تراكب الموارد.

  • يُستخدَم تداخل الموارد أثناء التشغيل (RRO) لتغيير قيم الموارد للحزمة المستهدَفة أثناء التشغيل. على سبيل المثال، قد يغيّر تطبيق مثبَّت على ملف ‎system image سلوكه استنادًا إلى قيمة أحد الموارد. بدلاً من ترميز قيمة المورد بشكلٍ ثابت في وقت الإنشاء، يمكن أن يؤدي تثبيت حزمة RRO على فسيفساء مختلف إلى تغيير قيم موارد التطبيق أثناء التشغيل. لمزيد من المعلومات عن عمليات RRO، يُرجى الاطّلاع على تغيير قيمة موارد التطبيق أثناء التشغيل.