בניית דפדפנים ל-Android Automotive OS

הקטגוריה "דפדפנים" נמצאת בגרסת בטא
נכון לעכשיו, כל אחד יכול לפרסם דפדפנים במסלולי בדיקה פנימיים בחנות Play. בשלב מאוחר יותר, נאפשר לפרסם במסלולים לבדיקה בקבוצה מוגדרת, לבדיקה פתוחה לציבור ולסביבת הייצור.

בנוסף לדרישות שמתוארות במאמרים פיתוח אפליקציות בזמן חניה לרכב והוספת תמיכה ב-Android Automotive OS לאפליקציה בזמן חניה, יש עוד כמה דרישות ספציפיות לדפדפנים שמפורטות בדף הזה.

סימון האפליקציה כדפדפן

כדי לציין שהאפליקציה היא דפדפן, היא צריכה לכלול מסנן Intent כמו זה שמופיע ברכיב <activity> המיוצא הבא:

<activity ...
    android:exported="true">
  ...
  <intent-filter>
    <action android:name="android.intent.action.MAIN"/>
   ...
    <category android:name="android.intent.category.APP_BROWSER"/>
  </intent-filter>
</activity>

מידע נוסף זמין במאמר android.intent.category.APP_BROWSER.

לאפשר למשתמשים לחסום גישה למידע אישי רגיש

בניגוד להרבה מכשירי Android, כלי רכב עם Android Automotive OS הם בדרך כלל מכשירים משותפים. כדי לתת למשתמשים את היכולת להגן על הנתונים הרגישים שלהם, כמו סיסמאות ופרטי תשלום, דפדפנים שמיועדים ל-Android Automotive OS לא יכולים לשמור סיסמאות או פרטי תשלום או לאפשר גישה אליהם, אלא אם המשתמש יכול לחסום את הגישה לסיסמאות באמצעות נעילת פרופיל. כדי לאמת את המשתמשים, אתם יכולים להשתמש בפרטי הכניסה של המכשיר או ליצור מערכת אימות בתוך האפליקציה.

בנוסף, לפני סנכרון של מידע אישי רגיש, דפדפנים שמיועדים ל-Android Automotive OS צריכים לבקש מהמשתמשים לאמת את הזהות שלהם ולהציג הודעה כדי ליידע אותם שהנתונים שלהם מסונכרנים עם הרכב. אם המשתמש לא הגדיר שיטת אימות, אתם יכולים לבקש ממנו להגדיר שיטה כזו כשהוא מנסה לסנכרן מידע אישי רגיש, באמצעות פרטי הכניסה של המכשיר או פרטי כניסה ספציפיים לאפליקציה שלכם.

שימוש בפרטי הכניסה של המכשיר לאימות

בקטע הזה מוסבר איך להשתמש בממשקי ה-API לאימות המערכת ולפרטי הכניסה למכשיר כדי לעמוד בדרישות שקשורות למידע אישי רגיש, כפי שמתואר למעלה.

בודקים אם הוגדרו פרטי כניסה למכשיר

כדי לבדוק אם המשתמש אבטח את המכשיר באמצעות קוד אימות, קו ביטול נעילה או סיסמה, אפשר להשתמש בשיטה KeyguardManager::isDeviceSecure.

val keyguardManager = context.getSystemService<KeyguardManager>()
val isDeviceSecure = keyguardManager?.isDeviceSecure == true

פותחים את ההגדרות של מסך הנעילה.

כדי להקל על המשתמשים אם הם צריכים להגדיר פרטי כניסה למכשיר, אתם יכולים לפתוח את מסך האבטחה באפליקציית ההגדרות באמצעות פעולת ה-Intent‏ Settings.ACTION_SECURITY_SETTINGS.

context.startActivity(
    Intent(Settings.ACTION_SECURITY_SETTINGS)
        .addFlags(Intent.FLAG_ACTIVITY_NEW_TASK)
)

הצגת בקשה למשתמש לבצע אימות

כדי לבקש מהמשתמש לבצע אימות, אפשר להשתמש ב-API‏ BiometricPrompt כמו שמתואר במאמר הצגת תיבת דו-שיח לאימות ביומטרי.