Android Automotive OS היא גרסה של Android שעברה אופטימיזציה לשימוש ברכב, והיא מבוססת על פלטפורמת Android. רכבים עם Google מובנית מריצים את מערכת ההפעלה Android Automotive OS ומגיעים עם אפליקציות ושירותים של Google, כולל Google Play, Gemini, Google Assistant ומפות Google.
מכונית יכולה להריץ את Android Automotive OS וגם לתמוך ב-Android Auto.מידע על חומרה של Android Automotive OS
כדי לקבל מידע נוסף על מפרטי החומרה המינימליים למכשירי Android Automotive OS, אפשר לעיין בקטע דרישות לרכב במסמך הגדרת התאימות (CDD) של Android לגרסאות Android שהאפליקציה שלכם תומכת בהן.
מגרעות במסך
בדומה לגורמי צורה אחרים של Android, מכשירי Android Automotive OS עם מסכים לא מלבניים תומכים בחיתוכי מסך. עם זאת, הגודל והצורה של החיתוכים ברכבים יכולים להיות שונים מאוד מאלה שנמצאים בגורמי צורה אחרים. הוראות מפורטות זמינות במאמר עבודה עם שוליים פנימיים של חלונות וחיתוכי מסך.
אודיו
בדרך כלל, במכשירי Android Automotive OS אי אפשר לשנות את עוצמת הקול. מידע נוסף על ההשפעה של השינוי הזה על האפליקציה
הסבר על תוכנת Android Automotive OS
מערכת Android Automotive OS מבוססת על אותה מערכת הפעלה ליבה שמשמשת מכשירים אחרים, אבל יש לה כמה תכונות נוספות ייחודיות שיכולות להשפיע על האופן שבו אפשר לפתח ולהשתמש באפליקציות.
ממשק משתמש של המערכת
יש כמה הבדלים באופן הפעולה של רכיבי ממשק המשתמש של המערכת במכוניות, שכדאי להכיר.
ניווט
בניגוד לגורמי צורה אחרים, במכשירים עם Android Automotive OS לא נדרש שיהיה אמצעי חומרה או תוכנה לחזרה. אם האפליקציה לא פועלת במצב תאימות, הפעילויות שמוטמעות בה צריכות לכלול אמצעי עזר לממשק המשתמש כדי לאפשר ניווט בתוך האפליקציה, בהתאם להנחיה בנושא איכות AN-1.
פריסת סרגל המידע
בדומה לגורמי צורה אחרים, Android Automotive OS כולל סרגלי מערכת כמו סרגלי סטטוס וסרגלי ניווט. במכוניות, יכול להיות שהסרגלים האלה יהיו בגודל ובמיקום שונים מאשר במכשירים אחרים. לדוגמה, סרגלי ניווט יכולים להיות ממוקמים בצד ימין, בצד שמאל או בתחתית המסך. גם אם יש סרגל סטטוס בחלק העליון וסרגל ניווט בחלק התחתון (כמו ברוב הטלפונים והטאבלטים), הגודל של הרכיבים האלה יהיה כנראה גדול בהרבה במכוניות.
בנוסף, בדרך כלל החלקים החסרים במסכים במכשירים ניידים נמצאים בתוך הגבולות של סרגלי המערכת, אבל זה לא המצב במכוניות.
הוראות מפורטות זמינות במאמר עבודה עם שוליים פנימיים של חלונות וחיתוכי מסך.
מצב עשיר
מערכת ההפעלה Android Automotive OS מאפשרת ליצרני ציוד מקורי (OEM) לקבוע אם אפליקציות יכולות להציג או להסתיר את סרגלי המערכת כדי להיכנס למצב מסך מלא ולצאת ממנו. יצרני ציוד מקורי יכולים למנוע מאפליקציות להסתיר את סרגלי המערכת, וכך לוודא שתמיד תהיה גישה במסך לאמצעי הבקרה של הרכב, כמו בקרת האקלים.
הגבלות על חוויית המשתמש
המגבלות של חוויית המשתמש (UX) הן יכולת שמוטמעת ב-Android Automotive OS כדי לטפל בשיקולים של הסחת דעת של הנהג. הגבלות חוויית המשתמש אחראיות למניעה אוטומטית של השימוש באפליקציות שלא עברו אופטימיזציה לשימוש בזמן נהיגה.
יצרני הרכב קובעים את קבוצת הכללים המדויקת שקובעת איך ומתי הגבלות חוויית המשתמש פעילות. הכללים האלה יכולים להשתנות בהתאם למיקום הגיאוגרפי. לדוגמה, יכול להיות שיהיו כללים שונים לרכב זהה שנמכר באירופה ולרכב זהה שנמכר בארצות הברית.
כללי ההגבלה של חוויית המשתמש יכולים להשתנות גם בהתאם לתצוגה בתוך הרכב. לדוגמה, יכול להיות שמסך מרכזי שנמצא בקו הראייה של הנהג יהיה מוגבל בזמן שהרכב בתנועה, אבל מסך של הנוסע לא יהיה מוגבל.
אם האפליקציה צריכה להתאים את עצמה להגבלות על חוויית המשתמש, צריך להתייחס אליהן ישירות – אל תנסו לבצע הנדסה הפוכה של ההטמעה שלהן. לדוגמה, אם מניחים שהגבלות חוויית המשתמש פעילות כשההילוך לא נמצא במצב חנייה, יכול להיות שתגבילו שלא לצורך אפליקציה שפועלת במסך של הנוסע.
הגבלת הסחות הדעת
כברירת מחדל, אי אפשר להפעיל פעילויות בזמן שההגבלות על חוויית המשתמש פעילות, כדי להגביל את הסחות הדעת של הנהג. כדי לציין למערכת שפעילות צריכה להמשיך לפעול בזמן שהרכב בתנועה, אפשר להוסיף את האלמנט <meta-data> הבא בתוך האלמנט <activity> המתאים.
<activity ...>
<meta-data android:name="distractionOptimized" android:value="true">
</activity>
כשמפתחים אפליקציות ל-Android Automotive OS, המטא-נתונים האלה צריכים להופיע במניפסט רק כשמצהירים על רכיב המניפסט <activity> של CarAppActivity אפליקציה שנבנתה באמצעות ספריית האפליקציות לרכב.
אסור לסמן פעילויות אחרות כאופטימליות להפחתת הסחות דעת. אם תסמנו פעילות כזו, האפליקציה תידחה כשתישלח אל חנות Google Play.
נגישות
התמיכה בנגישות ב-Android Automotive OS לא רחבה כמו במכשירים אחרים. האפשרויות TalkBack, גישה באמצעות מתג וVoice Access לא זמינות במכשירי Android Automotive OS.
יש תמיכה בהעדפות של כתוביות במכשירי Android Automotive OS. פרטים נוספים על השילוב זמינים במאמר בנושא אימוץ הגדרות הכתוביות של המערכת.
בחירת רשת
Android Automotive OS תומך בבחירת רשת לכל אפליקציה (PANS), שמאפשרת ליצרני ציוד מקורי (OEM) לנתב תנועה ברשתות סלולריות לרשתות שונות על בסיס אפליקציה-אפליקציה.
רוב האפליקציות משתמשות רק ברשת ברירת המחדל שהוקצתה להן, והן יכולות להפיק תועלת מהתכונה הזו – לדוגמה, יצרן הציוד המקורי (OEM) עשוי לשלם על תעבורת הרשת מהאפליקציה שלכם גם אם למשתמש אין תוכנית נתונים משלו. אם האפליקציה (או אחת מהתלויות שלה) מסתמכת על רשתות שאינן ברירת המחדל, יכול להיות שהיא לא תיהנה מההעדפות שהוגדרו על ידי יצרן הציוד המקורי. מידע נוסף על שימוש ברשתות שאינן ברירת המחדל מופיע במאמר קריאת מצב הרשת.
תכונות המערכת
אפשר לזהות אם תכונה מסוימת זמינה באמצעות PackageManager::hasSystemFeature ולהתאים את ההתנהגות של האפליקציה בהתאם.
תכונות החומרה
בדומה למכשירים אחרים שאינם ניידים, יכול להיות שתכונות החומרה שזמינות במכוניות יהיו שונות מאלה שזמינות במכשירים ניידים.
כיוון המסך
בדומה לטלוויזיות, מכוניות הן מכשירים עם אוריינטציה קבועה. בניגוד לטלוויזיות, הם מגיעים גם בתצוגה לאורך וגם בתצוגה לרוחב. כדי שאפליקציות שנוצרו עבור Android Automotive OS יוכלו להיות מופצות לכל כלי הרכב, האפליקציות צריכות לוודא שאין להן דרישה מפורשת או מרומזת לתכונות android.hardware.screen.landscape או android.hardware.screen.portrait.
מיקום ברשת
במכשירי Android Automotive OS רבים לא מיושם מחסנית הטלפוניה שמשמשת לאספקת מיקום ברשת, ולכן לא מדווח על תכונת המערכת android.hardware.location.network. יכול להיות שמיקום ברשת לא יהיה זמין, אבל עדיין תהיה תמיכה בגישה למיקום משוער – אפשר לעיין במאמר בנושא מיקום משוער ב-Android Automotive OS.
תכונות התוכנה
יכול להיות שמכשירי Android Automotive OS לא יתמכו בחלק מהתכונות של תוכנות שנפוצות בדרך כלל במכשירים אחרים. לדוגמה, התכונות הבאות לא זמינות ברכבים רבים עם Android Automotive OS:
עמידה בדרישות התכונות של Google Play
כדי להפיץ אפליקציות שנוצרו ל-Android Automotive OS במכוניות דרך Google Play, צריך לכלול רכיב <uses-feature> בקובץ AndroidManifest.xml של התכונה android.hardware.type.automotive:
<manifest ...>
...
<!--
See Choose a track for Android Automotive OS
for details on how to choose which value to use for the android:required attribute.
-->
<uses-feature
android:name="android.hardware.type.automotive"
android:required="[true|false]">
...
</manifest>
בנוסף, אם באפליקציה יש הצהרה מפורשת על תכונה עם android:required="true" או דרישה משתמעת לתכונה עבור אחת מהתכונות הבאות, צריך לעדכן או להסיר אותן כדי שהדרישות לתכונות של האפליקציה לא ימנעו את הפצתה לרכבים שתואמים לה בדרך אחרת:
android.hardware.wifiandroid.hardware.screen.portraitandroid.hardware.screen.landscapeandroid.hardware.camera
אם תכונות מוצהרות באופן מפורש באמצעות android:required="true", אפשר לבצע אחת מהפעולות הבאות:
- מוחקים את האלמנט
<uses-feature>אם התכונה לא נדרשת באופן מרומז. - מצהירים על התכונה באופן מפורש באמצעות
android:required="false".
אם התכונות נדרשות באופן מרומז, אפשר לבצע אחת מהפעולות הבאות:
- מצהירים על התכונה באופן מפורש באמצעות
android:required="false". - צריך להסיר או לעדכן את ערכי המניפסט שיוצרים את הדרישה המרומזת לתכונה.
שינוי ההצהרות על התכונות במניפסט לא משפיע על הפעולה בפועל של האפליקציה, לכן צריך לבדוק שהאפליקציה עדיין פועלת כמו שצריך בלי התכונות האלה.
שאלות נפוצות
באילו כלי רכב יש שירותי Google מובנים?
באתר מכוניות עם שירותי Google מובנים מופיעה רשימה של יצרני רכב מקוריים (OEM) שיש להם דגמים עם שירותי Google מובנים. אפשר לקבל מפרטי חומרה ופרטים אחרים על מכשירים באמצעות קטלוג המכשירים ב-Play Console.