الملف الشخصي للجهاز المصاحب، الذي تم طرحه في Android 12، هو ميزة تسمح للتطبيقات المصاحبة بطلب مجموعة من الأذونات الخاصة بنوع الجهاز المصاحب، مثل الساعة الذكية. يؤدّي استخدام ملف شخصي على جهاز مصاحب إلى تبسيط عملية التسجيل من خلال السماح للتطبيقات بعرض طلب واحد للمستخدمين على أجهزتهم الجوّالة لطلب مجموعة محدّدة من الأذونات بدلاً من الطلبات المتعدّدة التي تطلب الأذونات بشكل فردي. يتيح ذلك تجربة إعداد أكثر سلاسة ومعدّلات تفعيل أفضل للتطبيقات المصاحبة.
لاستخدام الملفات الشخصية للأجهزة المصاحبة، يجب أن تستوفي التطبيقات المصاحبة المتطلبات التالية:
- إدارة جهاز مصاحب (مثل ساعة ذكية)
- أن تشتمل على ميزات تطبيق أو تطلب بيانات من واجهات برمجة تطبيقات 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 |
|
ملف شخصي على Glass
تم طرح الملف الشخصي "النظّارات" في Android 14.
يوضّح الجدول التالي الأذونات المحدّدة للملف الشخصي لجهاز
COMPANION_DEVICE_GLASSES
ومتطلبات استخدامها.
الأذونات | متطلبات الأجهزة والتطبيقات المصاحبة |
---|---|
الإشعاراتPOST_NOTIFICATIONS |
|
Phone |
|
SMS |
|
Contacts |
|
Microphone |
|
Nearby devices |
|
Managing ongoing calls |
|
التنفيذ
بالنسبة إلى المطوّرين التابعين لجهات خارجية الذين ينفذون تطبيقًا مصاحبًا يطلب الملف الشخصي
DEVICE_PROFILE_WATCH
، عليهم اتّباع الخطوات التالية:
استخدِم الطريقة
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/
.