פרופילים של מכשירים נלווים

פרופיל המכשיר הנלווה, שהוצג ב-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)
  • להיות מכשיר מחובר באמצעות Bluetooth או Wi-Fi
  • יש לו מסך שיכול להציג התראות (לא כולל מכשירים שמשתמשים ברטט במקום במסך)
  • יצירת חוויית התראות שמופיעה למשתמש, למשל, הצגת התראות מהטלפון במסך של המכשיר הנלווה.
  • פרסום התראות בטלפון לניהול המכשיר. לדוגמה, כששעון מחובר או כשתכונה מסוימת מופעלת.
Phone
  • להיות מכשיר מחובר באמצעות Bluetooth או Wi-Fi
  • כולל מיקרופון ורמקול מובנים שמאפשרים שיחה קולית
  • יש לו מסך שבו מוצגים פרטי המתקשר
  • מספקת חוויית שיחות טלפון גלויה למשתמשים (האפליקציה הנלווית מגשרת על שיחות הטלפון)
SMS
  • להיות מכשיר מחובר באמצעות Bluetooth ו/או Wi-Fi
  • יש מסך שמוצגות בו הודעות SMS
  • יצירת חוויית שימוש ב-SMS מול המשתמשים
Contacts
  • להיות מכשיר מחובר באמצעות Bluetooth או Wi-Fi
  • יש מסך תצוגה
  • שימוש בפרטים ליצירת קשר כחלק מחוויית השיחה או ההודעה
Calendar
  • להיות מכשיר מחובר באמצעות Bluetooth ו/או Wi-Fi
  • יש לו מסך תצוגה
  • לספק חוויית משתמש ביומן בשעון
Nearby devices
  • להיות מכשיר מחובר באמצעות Bluetooth ו/או Wi-Fi
  • יש מסך תצוגה
  • לספק חוויית התאמה/חיבור שתהיה נגישה למשתמש בשעון
eSIM provisioning
  • להיות מכשיר מחובר באמצעות Bluetooth ו/או Wi-Fi
  • יש לו מסך תצוגה
  • לספק חוויית משתמש שמאפשרת לנהל את השירותים של המנוי מהספק בשעון
Managing ongoing calls
  • להיות מכשיר מחובר באמצעות Bluetooth ו/או Wi-Fi
  • כולל מיקרופון ורמקול מובנים שמאפשרים שיחה קולית
  • יש לו מסך שבו מוצגים פרטי המתקשר
  • חוויית שיחה טלפונית למשתמש (אפליקציית האפליקציה מקשרת בין שיחות טלפון)

פרופיל משקפיים

פרופיל המשקפיים חדש ב-Android 14.

בטבלה הבאה מתוארות ההרשאות שמוגדרות לפרופיל המכשיר COMPANION_DEVICE_GLASSES והדרישות לשימוש בהן.

הרשאות דרישות לגבי האפליקציה הנלווית והמכשיר
התראות

POST_NOTIFICATIONS
  • להיות מכשיר מחובר באמצעות Bluetooth או Wi-Fi
  • יש לו מסך שיכול להציג התראות (לא כולל מכשירים שמשתמשים ברטט במקום במסך)
  • יצירת חוויית התראות שמופיעה למשתמש, למשל, הצגת התראות מהטלפון במסך של המכשיר הנלווה.
  • פרסום התראות מהטלפון לניהול המכשיר, למשל כשמכשיר משקפיים מחובר או כשתכונה ספציפית מופעלת.
Phone
  • להיות מכשיר מחובר באמצעות Bluetooth ו/או Wi-Fi
  • כולל מיקרופון ורמקול מובנים שמאפשרים שיחה קולית
  • יש לו מסך שבו מוצגים פרטי המתקשר
  • מספקת חוויית שיחות טלפון גלויה למשתמשים (האפליקציה הנלווית מגשרת על שיחות הטלפון)
SMS
  • להיות מכשיר מחובר באמצעות Bluetooth ו/או Wi-Fi
  • יש מסך שמוצגות בו הודעות SMS
  • יצירת חוויית שימוש ב-SMS מול המשתמשים
Contacts
  • להיות מכשיר מחובר באמצעות Bluetooth או Wi-Fi
  • יש מסך תצוגה
  • שימוש בפרטים ליצירת קשר כחלק מחוויית השיחה או ההודעה
Microphone
  • להיות מכשיר מחובר באמצעות Bluetooth ו/או Wi-Fi
  • יש לו מסך תצוגה
  • חוויית שימוש במיקרופון הפונה למשתמש במשקפיים
Nearby devices
  • להיות מכשיר מחובר באמצעות Bluetooth ו/או Wi-Fi
  • יש מסך תצוגה
  • חוויית התאמה/חיבור של משתמש משקפיים
Managing ongoing calls
  • להיות מכשיר מחובר באמצעות Bluetooth ו/או Wi-Fi
  • כולל מיקרופון ורמקול מובנים שמאפשרים שיחה קולית
  • יש לו מסך שבו מוצגים פרטי המתקשר
  • מספקת חוויית שיחות טלפון גלויה למשתמשים (האפליקציה הנלווית מגשרת על שיחות הטלפון)

הטמעה

מפתחים של צד שלישי שמטמיעים אפליקציית לווין שמבקשת את הפרופיל DEVICE_PROFILE_WATCH צריכים לבצע את הפעולות הבאות:

  1. קוראים ל-method‏ setDeviceProfile.

  2. מעבירים פרופיל (לדוגמה, DEVICE_PROFILE_WATCH כשמפתחים את AssociationRequest).

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

  1. מאחזרים את האישור באמצעות הפקודה הבאה:

    keytool  -printcert -jarfile PATH/TO/APK
    
  2. מחליפים את שם החבילה ואת האישור כפי שמוצג בדוגמה הבאה בקובץ התצורה:

    <!-- 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>
    
  3. משתמשים ב-AssociationRequest כדי לשלוח בקשה לשיוך למכשיר נלווה יחיד.

אימות

כדי לבדוק את ההתנהגות של התכונה 'פרופיל של מכשיר נלווה', משתמשים בבדיקות CTS ב-cts/tests/tests/companion/.