אסימוני עיצוב של יצרן ציוד מקורי הם הטמעה של מערכת Material Design ב-Android Automotive OS (AAOS). בניגוד לגישה של בחירת ערכי אסימונים בנייד על סמך אלגוריתם או על סמך בחירת משתמש, יצרני ציוד מקורי (OEM) קובעים את ערכי האסימונים של העיצוב. אסימוני עיצוב מייצגים את ההחלטות הקטנות והחוזרות על עצמן בעיצוב שמרכיבות את הסגנון החזותי של מערכת העיצוב, ומחליפים ערכים סטטיים בשמות מובנים. האסימונים דומים לאסימונים שהוגדרו על ידי מערכת העיצוב החדשני.
ספריית האסימונים של OEM
הפניה לאסימוני העיצוב של ה-OEM מתבצעת דרך ספריית האסימונים של ה-OEM, שמכילה את שלושת הרכיבים שמוצגים באיור 1.
איור 1. רכיבים של ספריית אסימונים של OEM.
ספרייה סטטית
רכיב הספרייה הסטטית של ספריית האסימונים של OEM מאפשר גישה לערכים של האסימונים באופן הבא:
- ממשקי API שמאפשרים לגשת לערכים של יצרני ציוד מקורי (OEM) לאסימונים.
- מאפשרת לבטל את ההפניות לאסימונים בעיצוב באמצעות ערכים של יצרן ציוד מקורי (OEM) אם ניתנה הסכמה לכך.
ספרייה משותפת
רכיב הספרייה המשותפת אחראי להגדרת הפרטים הבאים:
- שם הספרייה.
- הסכמה בוליאננית להפעלה של ערכי אסימונים של יצרני ציוד מקורי (OEM).
- סגנון שמספק ערכים של אסימוני OEM.
כדי לאפשר ל-OEM להיות הבעלים של רכיב הספרייה המשותף הזה, כולל שם החבילה שהוגדר על ידי ה-OEM, יצרני הציוד המקורי יכולים ליצור שינוי מברירת המחדל של הטמעת הספרייה המשותפת.
איור 2. שינוי של הטמעה של ספרייה משותפת.
ספרייה משותפת של יצרן ציוד מקורי
שינוי של יצרן ציוד מקורי (OEM) ברכיב הספרייה המשותפת מאפשר ל-OEM להיות הבעלים של הספרייה תוך שמירה על תאימות לרכיבים אחרים בספריית האסימונים של ה-OEM. לשם כך, ה-OEM יכול להגדיר את שם החבילה והחתימה, בלי לשנות את ההטמעה של הספרייה המשותפת.
אפשר להגדיר שינויים מברירת המחדל בספרייה משותפת באופן הבא:
override_android_app { name: "[OEM]-token-shared-lib", base: "token-shared-lib", package_name: "com.[OEM].sharedlib", rename_resources_package: false, certificate: … }
במאמר ציון ערכי אסימונים של OEM מוסבר איך מגדירים ערכי אסימונים.
התאמות אישיות של ספריות משותפות של יצרני ציוד מקורי
כדי לתמוך בסכימות שונות של ערכי אסימונים (לדוגמה, הבחנה בין דגם או מצב נסיעה), יצרני ציוד מקורי יכולים לספק ערכים דינמיים לאסימונים על ידי טירגוט הספרייה המשותפת של יצרן הציוד המקורי באמצעות שכבות-על של משאבים בסביבת זמן ריצה (RRO). למידע נוסף, ראו שינוי הערך של משאבים של אפליקציה בזמן הריצה.
במאמר ציון ערכי אסימונים של OEM מוסבר איך מגדירים ערכי אסימונים.
ציון ערכי אסימונים של OEM
כדי לציין ערכים של אסימונים, מגדירים את המאפיין התואם בסגנון 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>
הבעת הסכמה לשימוש בערכים של יצרן ציוד מקורי (OEM)
כדי שאפליקציות יוכלו לגשת לערכי אסימונים שסופקו על ידי יצרני ציוד מקורי, יצרני הציוד צריכים קודם להביע הסכמה לשינוי ערכי ברירת המחדל של האסימונים על ידי הגדרת הערך true
למשתנה הבוליאני enable_oem_tokens
.
ערכי אסימונים של 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 צריך להגדיר את מאפייני הספרייה המשותפת בסגנון על ידי ציון השם של הספרייה המשותפת.
הגדרת טעינה אחרונה
במערכות שכוללות הטמעה של OEM של ספרייה משותפת של אסימונים, צריך להגדיר את המערכת כך שתטען את הספרייה המשותפת אחרי כיתות האפליקציה. כדי לעשות זאת, צריך לכלול את שם הספרייה (com.android.oem.tokens
) בקובץ התצורה config_sharedLibrariesLoadedAfterApp
במערכת. אם יש לכם גישה ל-Google Automotive Services (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>
שיטות מומלצות
בהמשך מפורטות שיטות מומלצות לספריית האסימונים של OEM.
הפעלת אסטרטגיית עדכון גמישה
כדי להבטיח גמישות ביחס לעדכונים, כדאי להיעזר בשיטות הבאות.
ספרייה משותפת של יצרן ציוד מקורי
ספריות משותפות למערכת צריכות להיות מותקנות מראש בתמונות המערכת, ולכן המכשירים צריכים להימכר עם הספרייה או שהספרייה צריכה להתווסף כחלק מעדכון Over-the-Air (OTA) (מידע נוסף זמין במאמר עדכוני OTA). עם זאת, הכללת הטמעה של סטאב של שינוי מברירת המחדל של OEM בספרייה משותפת של אסימון OEM בקובץ אימג' של מערכת מאפשרת לדחוף עדכון להטמעה עובדת מלאה למכשירים במועד מאוחר יותר, בלי צורך בעדכון OTA.
RROs בספריות משותפות
אין דרישה להתקין קובצי RRO כאפליקציות מערכת, אבל כך אפשר לקבל התנהגות עדכון מסוימת.
- עדכונים אוטומטיים של אפליקציות כשהמשתמשים לא מחוברים.
- המשתמש לא יכול להסיר אותה (המשתמשים יכולים רק להסיר עדכונים).