במכשירים עם Android מגרסה 15 ואילך, ב-Android Auto יש תמיכה בהפעלת אפליקציות מקטגוריות נתמכות של אפליקציות במצב 'חניה' ישירות ביחידה הראשית. מידע נוסף על חוויית המשתמש של אפליקציות שמושהות ב-Android Auto זמין במאמר אפליקציות שמושהות.
הצהרה על תמיכה ב-Android Auto
כדי להצהיר שהאפליקציה תומכת ב-Android Auto, צריך לכלול את הרכיב <category>
הבא במסנן ה-Intent של פעילות במניפסט של האפליקציה:
<activity ...>
<intent-filter>
<action android:name="android.intent.action.MAIN" />
...
<category android:name="android.intent.category.CAR_LAUNCHER" />
</intent-filter>
</activity>
באופן כללי, אפשר להוסיף את רכיב הקטגוריה android.intent.category.CAR_LAUNCHER
לאותו מסנן כוונה כמו רכיב android.intent.category.LAUNCHER
, אבל אפשר להוסיף אותו גם למסנן אחר אם רוצים.
רשומות מניפסט ספציפיות לקטגוריה
בנוסף לדרישות הקודמות, למשחקים יש דרישות נוספות. סימון האפליקציה כמשחק
תמיכה בגדלים נפוצים של מסכים ב-Android Auto
כדי ליהנות מחוויית משתמש מיטבית, מומלץ להפוך את האפליקציה למתאימת באופן מלא לגודלי מסך שונים. לפחות, כדי להבטיח חוויית שימוש באיכות גבוהה במגוון המכוניות שתומכות ב-Android Auto, אסור שהאפליקציות יהיו בפורמט pillarbox משמעותי במסכים בכיוון לרוחב, כפי שמתואר בהנחיה DO-2
בנושא איכות האפליקציות למכוניות.
לדוגמה, אם אפליקציה פועלת ביחס גובה-רוחב לאורך עם פס שחור בצדדים במסך לרוחב, היא תידחה במהלך הבדיקה בחנות Play. מותר להציג אפליקציה ביחס גובה-רוחב לרוחב עם פס צד מינימלי במסך לרוחב, וגם אפליקציה ביחס גובה-רוחב לרוחב עם פס צד במסך לאורך.
בדיקה של גדלי מסך קנוניקליים
כשאתם מפתחים ובודקים את האפליקציה ל-Android Auto, אתם יכולים להשתמש בהגדרות של יחידת ראש (DHU) למחשב כדי לוודא שהאפליקציה עומדת בדרישות שלמעלה:
לרוחב, קטן
[general]
resolution = 800x480
dpi = 160
...
לרוחב (Wide)
[general]
resolution = 1920x1080
dpi = 160
marginheight = 596
normalizedpi = true
cropmargins = true
...
הדגשת דיוקן
[general]
resolution = 1920x1080
dpi = 160
marginwidth = 878
normalizedpi = true
cropmargins = true
...
זיהוי שימוש ב-Android Auto
אם אתם רוצים לזהות מתי משתמשים באפליקציה דרך Android Auto (למשל למטרות ניתוח נתונים), אתם יכולים להשתמש בשני אותות:
- סטטוס החיבור שדווח על ידי ה-API של
CarConnection
. כש-Android Auto מחובר, הסמל יהיהCONNECTION_TYPE_PROJECTION
. - מזהה התצוגה של המסך הפעיל. כשהאפליקציה פועלת במסך שאינו מסך מובנה, למשל כשמשתמשים בה דרך Android Auto, הערך הזה הוא לא
DEFAULT_DISPLAY
.
קטע הקוד הבא מראה איך לשלב את האותות האלה כדי לזהות שימוש דרך Android Auto:
val connectionType = ...
val displayId = context.display.displayId
isRunningOnAndroidAuto = connectionType == CONNECTION_TYPE_PROJECTION and displayId != DEFAULT_DISPLAY