יצרני ציוד מקורי (OEM) צפויים לעבור לגרסה החדשה ביותר של car-ui-lib-plugin-apis
(1.2.0 ואילך) בהקדם האפשרי. מומלץ ליצרני ציוד מקורי (OEM) לא לשלוח פלאגין שמשתמש בגרסה ישנה.
למה אנחנו מבצעים את העדכון הזה?
Java 8+ APIs נתמכים בגרסאות קודמות של Android באמצעות Java 8+ API desugaring support. הטמעות של ממשקי API חסרים עוברות קומפילציה באפליקציות, וקוד הבייטים של חבילות ה-APK נכתב מחדש כדי להפנות להטמעות במקום לספריות בפלטפורמה.
כדי לטעון הטמעות של רכיבי ממשק משתמש של יצרן ציוד מקורי (OEM) מפלאגין של ספריית ממשק המשתמש שברכב, צריך להפנות לשיטות שמוגדרות בממשקי car-ui-lib-plugin-apis
. הפניות לשיטות האלה מתבצעות מאפליקציות לפלאגינים של ספריית ממשק המשתמש שברכב בזמן הריצה, מתוך ציפייה שחתימות השיטות יהיו זהות באפליקציה וביישום הפלאגין.
מערכות בנייה מסוימות מאפשרות לבצע desugaring של API בכל שלב בגלל דרישות של רמת SDK מינימלית ספציפית. יכול להיות שחתימות של שיטות שעברו desugaring בממשקי car-ui-lib-plugin-apis
לא יהיו זהות לחתימות של שיטות בהטמעה של פלאגין OEM שלא עבר desugaring, ולכן הפלאגינים לא ייטענו.
כתוצאה מכך, חלק מהאפליקציות של GAS שעברו קומפילציה באמצעות מערכת ה-Build הפנימית של Google לא תואמות לפלאגין של ספריית ממשק המשתמש שברכב. לכן הסרנו את כל התלות בממשקי Java 8 (ומעלה) API שדורשים desugaring. השינוי הזה מחייב עדכונים ב-API של הממשקים שמוגדרים על ידי car-ui-lib-plugin-apis
.
הפעולות הנדרשות לפלאגינים של OEM
כדי לעדכן את ה-API:
מעדכנים את הטמעת הפלאגין לגרסה האחרונה של
car-ui-lib-plugin-apis
. כדי לקבל את הגרסה האחרונה (1.2.0 ומעלה), אפשר לעיין במאגר Maven של Google.מעדכנים את ההטמעה של הפלאגין כדי להטמיע את הממשק
PluginFactoryOEMV4
. כדי לבצע את השינוי הזה, צריך לבצע את השלבים הבאים כשמיישמים רכיב באמצעות התוסף של יצרן הציוד המקורי. עדכון ההטמעה של OEM של:סרגל הכלים, כדי להטמיע את
ToolbarControllerOEMV2
.פריטים ברשימת התוכן, להרחבה
ContentListItemOEMV2
.טיפול בתוצאות חיפוש של IME, כדי להרחיב את
ImeSearchInterfaceOEMV2
.
מעדכנים את האפליקציה כדי להשתמש בגרסה האחרונה של ספריית ממשק המשתמש שברכב.
מה יקרה אם העדכון הזה לא יוחל?
אם לא מבצעים את השלבים שמופיעים בדף הזה עבור פלאגין OEM, אפליקציות שעברו desugaring, כמו Google Automotive Services (GAS), לא מצליחות לטעון הטמעות של פלאגין Car UI Library ולא מוחלות התאמות אישיות של OEM באמצעות מנגנון הפלאגין.
התאמות אישיות קיימות של RRO בספריית ממשק המשתמש שברכב לא מושפעות מהבעיה הזו וממשיכות לפעול כרגיל.