الرموز المميّزة لتصميم المصنّع الأصلي للجهاز هي تطبيق لنظام التشغيل Android Automotive (AAOS). التصميم المتعدد الأبعاد . وعلى عكس أسلوب الخوارزمية أو أسلوب اختيار المستخدمين لقيم الرموز المميّزة على الأجهزة الجوّالة، يعيّن المصنّعون الأصليون للأجهزة القيم المميزة للتصميم. تمثل الرموز المميزة للتصميم قرارات التصميم الصغيرة والمتكررة التي تشكل النمط المرئي لنظام التصميم واستبدال القيم الثابتة بأسماء واضحة ذاتيًا. الرموز المميزة هي مماثلة لتلك التي حددها نظام Material Design.
مكتبة الرموز المميّزة للمصنّع الأصلي للجهاز
وتتم الإشارة إلى الرموز المميزة لتصميم المصنّع الأصلي للجهاز من خلال مكتبة الرموز المميزة للمصنّع الأصلي للجهاز، والتي تتألف من ثلاث والمكونات الموضحة في الشكل 1.
الشكل 1. مكوّنات مكتبة الرموز المميّزة للمصنّع الأصلي للجهاز
مكتبة ثابتة
يعمل مكوّن المكتبة الثابتة لمكتبة الرموز المميّزة للمصنّع الأصلي للجهاز على تسهيل الوصول إلى قيم الرموز المميّزة يتابعها.
- توفّر واجهات برمجة التطبيقات للوصول إلى قيم المصنّع الأصلي للجهاز للرموز المميّزة.
- تُتيح هذه السياسة خيار إلغاء مراجع الرموز المميّزة في المظهر باستخدام قيم المصنّع الأصلي للجهاز.
المكتبة المشتركة
يكون مكوِّن المكتبة المشتركة مسؤولاً عن تحديد ما يلي:
- اسم المكتبة
- قيمة منطقية لتفعيل قيم الرموز المميّزة للمصنّع الأصلي للجهاز
- يشير ذلك المصطلح إلى النمط الذي يوفّر قيم الرموز المميّزة الخاصة بالمُصنّع الأصلي.
لاستيعاب ملكية المصنّع الأصلي للجهاز لمكوّن المكتبة المشتركة هذا، بما في ذلك الحزمة التي يحددها المصنّع الأصلي للجهاز يمكن للمصنّعين الأصليين للأجهزة إنشاء إلغاء تنفيذ المكتبة المشتركة.
الشكل 2. إلغاء تنفيذ مكتبة مشتركة.
المكتبة المشتركة للمصنّع الأصلي للجهاز
تسمح عمليات تجاوز المصنّع الأصلي للجهاز لمكون المكتبة المشتركة بملكية المكتبة للمصنّع الأصلي للجهاز التوافق مع المكونات الأخرى في مكتبة الرموز المميزة للمصنّع الأصلي للجهاز من خلال توفير وسيلة اسم الحزمة وتوقيعها ليتم ضبطهما بواسطة المصنّعين الأصليين للأجهزة مع ترك تنفيذ العمليات ألّا يتم تعديله بأي شكل آخر.
يمكن تحديد عمليات التجاوز لمكتبة مشتركة كما هو موضح أدناه:
override_android_app { name: "[OEM]-token-shared-lib", base: "token-shared-lib", package_name: "com.[OEM].sharedlib", rename_resources_package: false, certificate: … }
لضبط قيم الرموز المميّزة، راجِع تحديد قيم الرموز المميّزة للمصنّع الأصلي للجهاز.
تخصيصات المكتبة المشتركة للمصنّع الأصلي للجهاز
لإتاحة المخططات المتنوعة لقيم الرموز المميزة (على سبيل المثال، التفريق بين وضع النموذج أو محرك الأقراص)، يمكن للمصنّعين الأصليين للأجهزة تقديم قيم ديناميكية للرموز المميّزة من خلال استهداف المكتبة المشتركة للمصنّعين الأصليين للأجهزة باستخدام "وقت التشغيل". تراكبات الموارد (RROs) لمزيد من المعلومات، يُرجى مراجعة تغيير قيمة موارد التطبيق في وقت التشغيل
لضبط قيم الرموز المميّزة، راجِع تحديد قيم الرموز المميّزة للمصنّع الأصلي للجهاز.
تحديد قيم الرموز المميّزة للمصنّع الأصلي للجهاز
لتحديد قيم الرمز المميّز، اضبط السمة المقابلة في النمط OemStyle
على
والقيمة المطلوبة.
<resources> <style name="OemStyle"> <item name="colorPrimary">#B0C5FF</item> <item name="colorOnPrimary">#002B76</item> <item name="colorPrimaryContainer">#003FA4</item> <item name="colorOnPrimaryContainer">#D9E2FF</item> … </style> </resources>
تفعيل قيم المصنّع الأصلي للجهاز
كي تتمكّن التطبيقات من الوصول إلى قيم الرموز المميّزة المقدَّمة من المصنّع الأصلي للجهاز، على المصنّعين الأصليين للأجهزة أولاً الموافقة على إلغاء الإعدادات التلقائية.
قيم الرمز المميّز من خلال ضبط القيمة المنطقية enable_oem_tokens
لتكون true
.
قيم رموز RRO المميزة
على نحو مشابه لضبط قيم الرمز المميّز في OemStyle
، يمكن استخدام قوائم RRO لتعديل
لتوفير قيم رمزية بديلة.
<resources> <style name="OemStyle"> <item name="com.android.oem.tokens:colorPrimary">#B0C5FF</item> <item name="com.android.oem.tokens:colorOnPrimary">#002B76</item> <item name="com.android.oem.tokens:colorPrimaryContainer">#003FA4</item> <item name="com.android.oem.tokens:colorOnPrimaryContainer">#D9E2FF</item> … </style> </resources>
يجب أن تعين RRO سمات المكتبة المشتركة على النمط من خلال تحديد المكتبة المشتركة الاسم.
ضبط وقت التحميل الأخير
إنّ الأنظمة التي تتضمّن تنفيذ المصنّع الأصلي للجهاز لمكتبة مشتركة للرموز المميّزة يجب أن تضبط النظام.
تحميل المكتبة المشتركة بعد صفوف التطبيق. لإجراء ذلك، يجب تضمين اسم المكتبة.
(com.android.oem.tokens
) في config_sharedLibrariesLoadedAfterApp
على النظام. إذا كان بإمكانك الوصول إلى "خدمات Google للسيارات" (GAS)، يتم فرض ذلك على أنّه
المتطلب.
<!-- The OEM token shared library will be loaded after app classes --> <string-array name="config_sharedLibrariesLoadedAfterApp" translatable="false"> <item>com.android.oem.tokens</item> </string-array>
أفضل الممارسات
في ما يلي توضيح لأفضل الممارسات المتعلّقة بمكتبة الرموز المميّزة للمصنّع الأصلي.
تفعيل استراتيجية تحديث مرنة
اطّلِع على الاستراتيجيات التالية لضمان توفير المرونة في ما يتعلّق بالتحديثات.
المكتبة المشتركة للمصنّع الأصلي للجهاز
بما أنّه يجب تثبيت المكتبات المشتركة للنظام مسبقًا على صور النظام، يجب تنفيذ أحد الإجراءَين أدناه: يجب إضافة السفينة التي تتضمن المكتبة أو المكتبة كجزء من تحديث عبر الهواء (OTA) (للتعلم المزيد، يُرجى الاطّلاع على تحديثات التحديث عبر الهواء). ومع ذلك، يمكن أن يشمل ذلك تنفيذ رمز كعبي لتجاوز المصنّع الأصلي للجهاز للمكتبة المشتركة للرمز المميّز للمصنّع الأصلي للجهاز على تتيح نسخة النظام تحديثًا للتنفيذ الكامل للعمل على الأجهزة في وقت لاحق دون الحاجة إلى التحديث عبر الهواء.
قوائم تسجيل الموارد المنتظمة (RRO) للمكتبة المشتركة
على الرغم من عدم وجود متطلبات لتثبيت RRO كتطبيقات للنظام، إلا أن ذلك يوفر بعض تحديث السلوك الذي قد يكون مرغوبًا فيه.
- التحديثات التلقائية للتطبيقات عندما لا يسجّل المستخدمون الدخول
- لا يمكن للمستخدم إلغاء تثبيته (يمكن للمستخدمين فقط إلغاء تثبيت التحديثات).