פרופיל של מכשיר נלווה, שהוצג ב-Android 12, הוא תכונה שמאפשרת לאפליקציות נלוות לבקש קבוצת הרשאות שספציפית לסוג המכשיר הנלווה, למשל שעון חכם. שימוש בפרופיל של מכשיר משני מפשט את תהליך ההרשמה, כי האפליקציות יכולות להציג למשתמשים בניידים שלהם הנחיה אחת לבקשת קבוצה מוגדרת של הרשאות, במקום כמה הנחיות לבקשת הרשאות בנפרד. כך אפשר ליצור חוויית הגדרה יעילה יותר ולשפר את שיעורי ההצטרפות לאפליקציות משלימות.
כדי להשתמש בפרופילים של מכשירים נלווים, אפליקציות נלוות צריכות לעמוד בדרישות הבאות:
- ניהול מכשיר נלווה (לדוגמה, שעון חכם).
- יש להן תכונות באפליקציה או שהן קוראות לממשקי API של Android שדורשים את כל ההרשאות שמוגדרות בפרופיל של המכשיר הנלווה.
כל פרופיל של מכשיר נלווה תואם לתפקיד ב-Android. למידע נוסף על ההרשאות והתפקיד התואם ב-Android של כל פרופיל, אפשר לעיין במאמר פרופילים של מכשירים נלווים לאפליקציות של צד שלישי.
מידע נוסף על מכשירים משלימים זמין במאמר בנושא התאמה של מכשיר משלים.
התנהגות המכשיר
בקטע הזה מתואר אופן הפעולה של המכשיר כשמשתמשים בפרופילים של מכשירים נלווים.
כשמשתמש מאשר בקשה של אפליקציה ליצור שיוך למכשיר משלים, שירות CompanionDeviceManager (CDM) מקצה את תפקיד פרופיל המכשיר (לדוגמה, שעון) לאפליקציה המשלימה, וכך מעניק את כל ההרשאות שמוגדרות לתפקיד הפרופיל שצוין.
תמונה 1 מציגה דוגמה לאפליקציה שמבקשת הרשאות לפרופיל המכשיר COMPANION_DEVICE_WATCH.
איור 1. תיבת דו-שיח עם בקשה להרשאות לפרופיל של מכשיר השעון.
כשמשתמש מוחק את נתוני החבילה בהגדרות או מסיר את כל המכשירים באפליקציה הנלווית, מערכת ה-CDM מבטלת את הפרופיל בזמן שהאפליקציה לא פועלת בחזית ואין לה שירות שפועל בחזית. ביטול הפרופיל מבטל גם את כל ההרשאות שהוגדרו לפרופיל.
אחרי שמשתמש מאשר בקשה של אפליקציה להעניק הרשאות לפרופיל מכשיר מסוים, הוא יכול לבטל הרשאות ספציפיות שהוא העניק. כשמשתמש מבטל הרשאה, האפליקציה נשארת משויכת למכשיר הנלווה, אבל יכול להיות שחלק מהתכונות לא יהיו זמינות. אם ההרשאה נדרשת כדי שהאפליקציה תפעל, האפליקציה צריכה לבקש את ההרשאה באמצעות בקשת הרשאה רגילה.
פרופילים של מכשירים נלווים לאפליקציות של צד שלישי
פרופיל צפייה
פרופיל השעון הוצג ב-Android 12.
בטבלה הבאה מתוארות ההרשאות המוגדרות בפרופיל המכשיר COMPANION_DEVICE_WATCH והדרישות לשימוש בהן.
| הרשאות | דרישות לגבי אפליקציה נלווית ומכשיר |
|---|---|
התראות
POST_NOTIFICATIONS (added in Android 15) |
|
Phone |
|
SMS |
|
Contacts |
|
Calendar |
|
Nearby devices |
|
eSIM provisioning |
|
Managing ongoing calls |
|
פרופיל משקפיים
פרופיל המשקפיים הוצג ב-Android 14.
בטבלה הבאה מתוארות ההרשאות המוגדרות בפרופיל המכשיר COMPANION_DEVICE_GLASSES והדרישות לשימוש בהן.
| הרשאות | דרישות לגבי אפליקציה נלווית ומכשיר |
|---|---|
התראותPOST_NOTIFICATIONS |
|
Phone |
|
SMS |
|
Contacts |
|
Microphone |
|
Nearby devices |
|
Managing ongoing calls |
|
הטמעה
מפתחים של צד שלישי שמטמיעים אפליקציה נלווית שמבקשת את הפרופיל DEVICE_PROFILE_WATCH צריכים לבצע את הפעולות הבאות:
מבצעים קריאה ל-method
setDeviceProfile.מעבירים פרופיל (לדוגמה,
DEVICE_PROFILE_WATCHכשיוצריםAssociationRequest).
יצרני מכשירים יכולים לדלג על הצגת תיבת הדו-שיח לבקשת הסכמה מהמשתמשים
יצרני מכשירים שמטמיעים אפליקציה נלווית במכשיר ספציפי צריכים להשתמש בהגדרות המערכת הבאות של Android כדי לקבל אישור לאפליקציה הנלווית. האישור מאפשר לאפליקציה לדלג על הצגת תיבת הדו-שיח לבקשת הסכמה מהמשתמשים.
מאחזרים את האישור באמצעות הפקודה הבאה:
keytool -printcert -jarfile PATH/TO/APKמחליפים את שם החבילה ואת האישור כמו שמוצג בדוגמה הבאה של קלט בקובץ ההגדרות:
<!-- A list of packages managing companion device(s) by the same manufacturers as the main device. It will not create the association without prompting if the association has been called multiple times in a short period. Note that config_companionDeviceManagerPackage and config_companionDeviceCerts are parallel arrays. --> <string-array name="config_companionDevicePackages" translatable="false"> <item>YOUR_COMPANION_APP_PACKAGE_NAME</item> </string-array> <!-- A list of SHA256 Certificates managing companion device(s) by the same manufacturers as the main device. It will fall back to showing a prompt if the association has been called multiple times in a short period. Note that config_companionDeviceCerts and config_companionDeviceManagerPackage are parallel arrays. Example: "1A:2B:3C:4D" --> <string-array name="config_companionDeviceCerts" translatable="false"> <item>YOUR_COMPANION_APP_CERTIFICATE</item> </string-array>אפשר להשתמש ב-
AssociationRequestכדי לשלוח בקשת שיוך למכשיר נלווה יחיד.
אימות
כדי לבדוק את ההתנהגות של התכונה 'פרופיל מכשיר נלווה', משתמשים בבדיקות CTS ב-cts/tests/tests/companion/.