כלי רכב מדור הבא תומכים במספר מסכים, וחלק מהם עשויים לפעול באמצעות Android כדי לספק תוכן עשיר. בדף הזה מתוארים הרכיבים העיקריים לשילוב של קבוצת מחוונים ותצוגות אחרות במערכת IVI של Android Automotive.
במסכים חיצוניים ב-Android
ב-Android 10 נעשה שימוש ב-API android.app.Presentation כדי לתמוך בשימוש במסכים חיצוניים. הצגה היא תיבת דו-שיח ייחודית שמטרתה להציג תוכן במסך משני. הצגה משויכת לתצוגה היעד בזמן היצירה, וההגדרות של ההקשר והמשאבים שלה מוגדרות בהתאם למדדי התצוגה.
תצוגת אשכול הכלים
ה-Presentation API מספיק למסך אופייני של מקבץ מכשירים, עם ההרשאות הבאות:
כדי להשתמש ב-Presentation API לא צריך:
- מיקוד אודיו נפרד.
- כדי להפעיל את כל הפעילות או האפליקציה.
- כדי להביא בחשבון קלט בו-זמני של משתמשים.
- כדי לטפל באירועי מגע.
למידע נוסף על השימוש בכמה מסכים, ראו סקירה כללית בנושא תצוגה מרובת מסכים.
דרישה מוקדמת: יש צורך בהיכרות עם פיתוחים קודמים של WindowManager של Android.
סוגי התוכן הנתמכים
יכול להיות שברכבים מסוימים לא יהיה צורך ב-Android להציג גרפיקה של אשכול כלי נגינה באופן ישיר, אבל הם עדיין ירצו להציג מידע כמו הדרכה מפורטת או שם המוזיקה. מערכת Android יכולה לשלוח נתונים כאלה בכמה דרכים. מכשיר Android יכול לשלוח תוכן של מקבץ המכשירים הבאים:
- מבוסס מטא-נתונים, כמו שליחת הודעות דרך CAN דרך
CarVendorExtensionManager
אוVehicleNetworkService
. מערכת האשכולות של המכשירים צריכה ליצור גרפיקה מתאימה על סמך המטא-נתונים. - גרפי, לתצוגה פיזית או וירטואלית. המסך יכול להיות מסך ייעודי בתוך אשכול המדידות, או חלק מתצוגה גרפית מלאה של אשכול הכלים.
דוגמה לארכיטקטורת חומרה של תצוגת מקבץ מכשירים מבוססת-גרפיקה:
איור 2. דוגמה למסך של אשכול מכשירים מבוסס-גרפיקה של Android Automotive.
מערכת ההפעלה Android ומערכת ההפעלה הקריטית לבטיחות (שאחראית לעיבוד גרפי של אשכול המכשירים) יכולות לשכון באותו מעבד SoC מרובה ליבות (לדוגמה, Cortex-R ייעודי למערכת הפעלה בזמן אמת ו-Cortex-A ל-Android). הממשק יכול להיות Ethernet AVB (Audio Video Bridge), LVDS או HDMI. ב-Android, אפשר לחבר את אשכול הכלים הגרפיים כמסך וירטואלי, וכך להסתיר את ארכיטקטורת החומרה מאחורי הטמעת Display HAL.
הגבלות במושב האחורי
למערכות בידור במושב האחורי יש את המגבלות הבאות ב-Presentation API:
- אי אפשר להקרין את הפעילות כולה (הצגת המסך היא תיבת דו-שיח).
- אפשר להתמקד רק באודיו אחד.
- אין משתמשים בו-זמנית.
- אין אירועי מגע ישירים במסך החיצוני (נדרש תהליך הזרקה נפרד).