في نظام التشغيل Android 13، تتيح ميزة بث التطبيقات للهواتف
بث تطبيقاتك على الأجهزة المتصلة، كما تتيح لهذه الأجهزة التفاعل مع
التطبيقات. يتيح الدور الجديد COMPANION_DEVICE_APP_STREAMING
للتطبيق إنشاء وإدارة خوادم وكيلة للأجهزة البعيدة المتصلة بهدف
بث التطبيقات من الجهاز المحلي إلى الجهاز البعيد. يمكن للتطبيق الذي يحمل دور
COMPANION_DEVICE_APP_STREAMING
الحصول على أذونات لإنشاء شاشة
افتراضية وتشغيل تطبيق عليها، ثم بث فيديو للتطبيق الذي تم تشغيله على
جهاز آخر. يمكن أيضًا لتطبيق "حامل الدور" إدخال أحداث الإدخال والميكروفون
المستلَمة من جهاز بعيد إلى الجهاز المحلي، كما لو كان هذا الجهاز
متصلاً كجهاز طرفي.
هندسة معمارية
اعتبارًا من نظام التشغيل Android 13، يشكّل مدير الجهاز الافتراضية الجديد ومدير الجهاز المصاحب (CDM) العناصر الأساسية لدعم بث التطبيقات والتفاعل مع الأجهزة المتصلة عن بُعد.
أداة إدارة الأجهزة الافتراضية
تعمل ميزة "بث التطبيقات" من خلال الاستفادة من الشاشات الافتراضية. ينشئ "مدير الأجهزة الافتراضية" شاشة افتراضية منفصلة عن الشاشة الأساسية المرئية. عندما يوافق المستخدم على بدء بث تطبيق، يتم تشغيل التطبيق على الشاشة الافتراضية أو نقله إليها. يتم نقل محتوى الشاشة الافتراضية في بث فيديو إلى الجهاز المتصل لعرضه.
يتضمّن "مدير الأجهزة الافتراضية" واجهات برمجة تطبيقات تتيح إنشاء مثيلات
VirtualDevice
وتسجيلها وإدارتها.
إنّ مثيل VirtualDevice
هو وكيل للجهاز المتصل و
إمكاناته. تتيح إحدى نُسخ VirtualDevice
لجهاز متصل إمكانية تلقّي بث تطبيقات وارد و
عرضه والتفاعل معه، وذلك من خلال تنفيذ ما يلي:
- إنشاء مثيل
VirtualDisplay
مخصّص للعرض على شاشة جهاز متصل - إدخال بث صوتي عن بُعد، مثل بث من ملف صوتي على الجهاز المرتبط، إلى الجهاز المحلي لتشغيله
- إدخال أحداث الإدخال عن بُعد، مثل تلك الواردة من keyboardالجهاز المرتبط، إلى الجهاز المحلي لتشغيل المحتوى
تطبيق "مدير الجهاز المصاحب"
تدير أداة إدارة المحتوى في الأجهزة الجوّالة حالة الاتصال وتفرض متطلبات الدور التي يجب استيفاؤها لتفعيل بث التطبيقات.
يوضِّح الشكل التالي التفاعلات بين الجهازَين المحلي والجهاز البعيد أثناء بث التطبيقات:
الشكل 1: التفاعلات بين الجهازَين المحلي والبعيد أثناء بث التطبيقات
تنفيذ دور بث التطبيق المصاحب
يمكن للمصنّعين الأصليين للأجهزة تنفيذ تطبيق يتضمّن دور COMPANION_DEVICE_APP_STREAMING
ل
إتاحة تجربة غنية وآمنة على جميع الأجهزة.
لإنشاء جهاز افتراضي لتفعيل بث التطبيقات، يجب أن يكون التطبيق حامل دور
COMPANION_DEVICE_APP_STREAMING
. عند منح الدور، يتلقّى التطبيق الإذن
CREATE_VIRTUAL_DEVICE
، ما يتيح له
إنشاء جهاز افتراضي. من المتوقّع أن ينفّذ مالكو الأدوار
بث التطبيقات من خلال إنشاء مثيل VirtualDevice
يعمل كخادم وكيل لجهاز متصل. تقدّم فئة VirtualDevice
methods التي تتيح استخراج سطح مركب لشاشة
افتراضية، وهو مناسب للبث إلى جهاز آخر. توفّر فئة VirtualDevice
أيضًا واجهات برمجة تطبيقات لإدخال أحداث الإدخال التي تحدث على جهاز بعيد في
الجهاز المحلي، ما يتيح لتطبيق يعمل على جهاز محلي أن يبدو
كأنّه يعمل على جهاز بعيد.
اتّبِع الخطوات التالية لتنفيذ دور البث في التطبيق المصاحب:
أنشئ تطبيقًا يطلب إذن
REQUEST_COMPANION_PROFILE_APP_STREAMING
في ملف البيان.اطلب من المستخدم منح التطبيق الإذن ببث التطبيقات.
أنشئ مثيلًا لنظام إدارة البيانات الوصفية
AssociationRequest
لطلب دورCOMPANION_DEVICE_APP_STREAMING
. يتلقّى التطبيق إذنCREATE_VIRTUAL_DEVICE
عند منح الدور.اتصل بـ
VirtualDeviceManager#create()
لإنشاء مثيلVirtualDevice
. باستخدام مثيلVirtualDevice
، يمكن للتطبيق إنشاء شاشات ومدخلات افتراضية وإدارتها.اطلق النية المعلّقة للإشعار على الشاشة الافتراضية وأنشئ تسجيلًا فيديو لهذه الشاشة.
أنشئ اتصالاً بالجهاز المتصل وبث الشاشة الافتراضية على الجهاز المتصل.
إعادة إدخال أحداث الإدخال من الجهاز المتصل إلى الجهاز المحلي من خلال واجهات برمجة تطبيقات
VirtualDevice
عندما يغلق المستخدم تطبيق البث على الجهاز البعيد، يمكنك إنهاء البث وإيقاف تشغيل مثيل
VirtualDevice
. في هذه المرحلة، يتم تشغيل تطبيق البث الذي سبق استخدامه في الخلفية على الجهاز المحلي ويتم إغلاق الربط.إذا لزم الأمر، انتظِر المزيد من الإشارات من الجهاز المتصل لإعادة بث المحتوى من التطبيق.
يتحمّل التطبيق مسؤولية الاتصال بالجهاز البعيد والإبلاغ عن حالة الاتصال إلى "مدير الجهاز المصاحب" وفرض متطلبات الأمان على النحو الموضّح في CDD.
متطلبات حامل دور COMPANION_DEVICE_APP_STREAMING
يمنح تطبيق "مدير الجهاز المصاحب" دور COMPANION_DEVICE_APP_STREAMING
عندما يربط المستخدم
تطبيق بث تطبيقات بجهاز. يرتبط هذا الدور بملف شخصي
للجهاز، ما يتيح التحكّم في التطبيقات التي يمكن إضافتها إلى
متجر Play والتي تتطابق مع هذا الملف الشخصي. اطّلِع على أدوار
Android
للحصول على قائمة بمتطلبات دور COMPANION_DEVICE_APP_STREAMING
. يُرجى التواصل مع نقطة اتصال Google للحصول على مزيد من المعلومات.
صلاحيات حامل دور COMPANION_DEVICE_APP_STREAMING
لتنفيذ بث التطبيقات، يفترض دور COMPANION_DEVICE_APP_STREAMING
أنّه
يمتلك تطبيق صاحب الدور الإمكانات والسلوكيات التالية:
- إنشاء اتصالات بالأجهزة الأخرى وإدارتها
- يمكنك إنشاء شاشات افتراضية موثوق بها وإدارتها، بما في ذلك الشاشات غير المُقفَلة، على النحو التالي:
- ابدأ الأنشطة على الشاشة الافتراضية.
- يمكنك إعادة إدخال الأحداث التي تحدث على تطبيق يتم بثّه على جهاز متصل على الجهاز المحلي، مثل تشغيل حدث لمس على الجهاز اللوحي عند الإحداثيات نفسها على الهاتف.
- تسجيل بيانات الصوت من التطبيق الذي يتم بثّه
- استبدال بث الميكروفون على الجهاز المحلي ببث الميكروفون على جهاز متصل أثناء استخدام تطبيق يتم بثه للميكروفون
- استبدال بث كاميرا الجهاز المحلي ببث كاميرا جهاز متصل أثناء استخدام تطبيق يتم بث محتواه للكاميرا
- إدارة الإشعارات وبثّها من الجهاز المحلي إلى الجهاز المتصل واتّخاذ الإجراءات بشأن الإشعارات
- بث البيانات الوصفية من الجهاز المحلي، مثل قائمة التطبيقات المتاحة على الجهاز المحلي، إلى الجهاز المتصل
- اطلب إثبات إمكانية الوصول إلى الجهاز.