אסימוני עיצוב OEM

אסימוני עיצוב OEM הם יישום Android Automotive OS (AAOS) של מערכת Material Design . שלא כמו הגישה האלגוריתמית או בחירת המשתמש עבור ערכי אסימון בנייד, יצרני OEM מייעדים ערכי אסימון עיצוב. אסימוני עיצוב מייצגים את החלטות העיצוב הקטנות החוזרות ונשנות המרכיבות את הסגנון החזותי של מערכת עיצוב ומחליפות ערכים סטטיים בשמות המובנים מאליהם. אסימונים דומים לאלו המוגדרים על ידי מערכת עיצוב החומרים.

ספריית אסימוני OEM

אסימוני עיצוב OEM מוזכרים דרך ספריית האסימונים של OEM, המורכבת משלושת הרכיבים המוצגים באיור 1.

איור 1. רכיבי ספריית אסימון OEM.

ספרייה סטטית

רכיב הספרייה הסטטי של ספריית האסימון של OEM מקל על הגישה לערכי האסימון כדלקמן.

  • מספק ממשקי API לגישה לערכי OEM עבור אסימונים.
  • מאפשר ביטול הסכמה של הפניות לאסימונים בעיצוב עם ערכי OEM.

ספרייה משותפת

רכיב הספרייה המשותפת אחראי להגדרת הפרטים הבאים:

  • שם הספרייה.
  • הסכמה בוליאנית להפעלת ערכי אסימון OEM.
  • סגנון המספק ערכי אסימון OEM.

כדי להתאים לבעלות OEM על רכיב הספרייה המשותפת הזה, כולל שם חבילה שהוגדר על ידי OEM, יצרני OEM יכולים ליצור עקיפה של יישום הספרייה המשותפת.

איור 2. עוקף מימוש ספרייה משותפת.

ספרייה משותפת של OEM

עקיפות 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 .

התאמות אישיות של ספרייה משותפת של OEM

כדי לתמוך בסכימות מגוונות לערכי אסימונים (לדוגמה, הבחנה בין מודלים או מצבי נסיעה), יצרני OEM יכולים לספק ערכים דינמיים עבור אסימונים על ידי מיקוד לספרייה המשותפת של OEM עם שכבות משאבי ריצה (RROs). למידע נוסף, ראה שינוי הערך של משאבי אפליקציה בזמן ריצה .

כדי להגדיר ערכי אסימון, ראה ציין ערכי אסימון 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

כדי שיישומים יוכלו לגשת לערכי אסימון שסופקו על ידי OEM, יצרני ציוד מקורי חייבים תחילה להצטרף לעקוף ערכי ברירת מחדל של אסימון על ידי הגדרת ה-boolean enable_oem_tokens להיות true .

ערכי אסימון RRO

בדומה לאופן שבו ערכי אסימון מוגדרים ב- OemStyle , ניתן להשתמש ב-RROs כדי לשנות את הסגנון כדי לספק ערכי אסימון חלופיים.

<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>

RROs צריכים להגדיר את תכונות הספרייה המשותפת על הסגנון על ידי ציון שם הספרייה המשותפת.

הגדר את הטעינה האחרונה

מערכות הכוללות יישום OEM של ספרייה משותפת אסימון חייבות להגדיר את המערכת לטעון את הספרייה המשותפת לאחר מחלקות האפליקציה. לשם כך, כלול את שם הספרייה ( 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>

שיטות עבודה מומלצות

שיטות עבודה מומלצות עבור ספריית אסימוני OEM מתוארות להלן.

אפשר אסטרטגיית עדכון גמישה

ראה את האסטרטגיות שלהלן כדי להבטיח שאתה מוסיף גמישות ביחס לעדכונים.

ספרייה משותפת של OEM

מכיוון שספריות משותפות למערכת נדרשות להיות מותקנות מראש בתמונות המערכת, התקנים חייבים להישלח עם הספרייה או שהספרייה חייבת להתווסף כחלק מעדכון Over-the-Air (OTA) (למידע נוסף, ראה עדכוני OTA ). עם זאת, הכללת יישום סטאב של עקיפה של OEM של ספרייה משותפת של אסימון OEM בתמונת מערכת מאפשרת לדחוף עדכון למימוש עבודה מלא למכשירים במועד מאוחר יותר ללא צורך ב-OTA.

RROs של ספרייה משותפת

למרות שאין דרישה להתקנה של RRO כאפליקציות מערכת, פעולה זו מספקת התנהגות עדכון שעשויה להיות רצויה.

  • עדכונים אוטומטיים של אפליקציות כאשר משתמשים לא מחוברים.
  • לא ניתן להסיר את ההתקנה על ידי המשתמש (משתמשים יכולים להסיר רק עדכונים ).