إنّ تطبيقات الوسائط التي تتفاعل بالصوت مع "مساعد Google" على هواتف Android والسيارات وأجهزة التلفزيون وسماعات الرأس يتم تشغيلها بواسطة واجهات برمجة تطبيقات جلسات وسائط Android وتستخدم إجراءات الوسائط. قد يكون من الصعب متابعة مراحل النشاط على الوسائط. حتى عملية التشغيل البسيطة من طلب البحث تحتوي على العديد من الخطوات الوسيطة التي يمكن أن يحدث فيها خطأ، كما هو موضّح في المخطط الزمني المبسط:
يتيح لك تطبيق Media Controller Test (MCT) اختبار التفاصيل المعقدة لتشغيل الوسائط على Android ويساعدك في التحقّق من تنفيذ جلسة تشغيل الوسائط.
يعرض "مركز عملائي" معلومات عن MediaController
لتطبيقك، مثل
PlaybackState
وبياناته الوصفية، ويمكن استخدامه لاختبار عناصر التحكّم في الوسائط داخل التطبيقات.
يتضمّن أيضًا MCT إطار عمل لاختبار التحقّق يتيح لك برمجة اختبار تأكيد الجودة.
لاستخدام MCT، يجب أن يحتوي تطبيقك على خدمة متصفِّح وسائط وأن تسمح لمركز MCT بالاتصال به. يُرجى الاطّلاع على مقالة إنشاء خدمة متصفِّح الوسائط للحصول على مزيد من المعلومات.
بدء MCT
![صفحة إطلاق MCT](https://developer.android.com/static/media/images/MCT/MCT-Launch-Screen.png?authuser=6&hl=ar)
عند تشغيل ميزة MCT، ستظهر لك قائمتان:
- جلسات وسائط نشطة - تكون هذه القائمة فارغة في البداية عند تشغيل MCT وستظهر لك الرسالة "لم يتم العثور على تطبيقات وسائط. الإشعار مطلوب إذن المستمع للبحث عن جلسات الوسائط النشطة". انقر على الإعدادات للانتقال إلى شاشة الأذونات وتفعيل إذن MCT.
- عمليات تنفيذ MediaBrowserService - تعرض هذه القائمة التطبيقات التي نفّذت خدمة متصفح الوسائط. في حال تنفيذ خدمة متصفِّح الوسائط، سيظهر تطبيقك في هذه القائمة، ولكن لا يمكنك استخدام MCT فقط في حال إعداد تطبيقك لقبول جميع عمليات الربط أو إدراج MCT في القائمة المسموح بها. راجِع التحكّم في اتصالات العميل باستخدام onGetRoot() للحصول على مزيد من المعلومات.
اختبار تطبيق هاتف يدويًا
في حال السماح لمركز عملائي بالاتصال بخدمة متصفِّح الوسائط في تطبيقك، يظهر تطبيقك في قائمة عمليات تنفيذ قائمة خدمات متصفِّح الوسائط. ابحث عنه هناك وانقر على التحكم لبدء تشغيل التطبيق في الخلفية.
بخلاف ذلك، يجب أولاً بدء تشغيل التطبيق بنفسك في الخلفية، ثم النقر على التحكم عند ظهوره في قائمة جلسات الوسائط النشطة.
الاستعداد للاختبار
عندما يبدأ MCT في التحكّم في تطبيقك، يعرض البيانات الوصفية للجلسة الحالية للتطبيق: الوسائط المحدّدة حاليًا والإجراءات التي تكون الجلسة جاهزة للتعامل معها.
![صفحة التحكم](https://developer.android.com/static/media/images/MCT/audio-focus.png?authuser=6&hl=ar)
يتضمن الجزء العلوي من صفحة عناصر تحكم MCT قائمة منسدلة يمكنك من خلالها اختيار البحث أو URI أو Media ID أو None، إلى جانب حقل نصي لتحديد بيانات الإدخال المرتبطة بالبحث أو معرّف الموارد المنتظم (URI) أو معرّف الوسائط إذا حددت أحد هذه الخيارات.
يؤدي الزران إعداد وتشغيل أسفل حقل النص مباشرةً إلى تنفيذ
المكالمات المناسبة (onPrepare()
وonPrepareFromSearch()
وonPrepareFromUri()
onPrepareFromMediaId()
وonPlay()
وonPlayFromSearch()
وonPlayFromUri()
onPlayFromMediaId()
) استنادًا إلى الإجراء الذي اخترته.
اختبار تركيز الصوت
ويجب أن يتمكن تطبيق الوسائط ذي الأداء الجيد من التعامل مع التركيز على الصوت. ويمكنك اختبار تركيز الصوت عن طريق تشغيل تطبيق صوتي آخر إلى جانب تطبيقك. تتضمّن صفحة عناصر تحكّم MCT زرًا يطلب التركيز على الصوت ويطلقه.
لاختبار تركيز الصوت، اتبع الخطوات التالية:
- استخدِم القائمة المنسدلة التركيز على الصوت لاختيار أحد التلميحات الثلاثة للمدة
AUDIOFOCUS_GAIN
أوAUDIOFOCUS_GAIN_TRANSIENT
أوAUDIOFOCUS_GAIN_TRANSIENT_MAY_DUCK
. - اضغط على الزر لطلب التركيز.
- اضغط على الزر مرة أخرى لتحرير التركيز.
اختبار عناصر التحكّم في النقل
![اختبار عناصر التحكّم في النقل](https://developer.android.com/static/media/images/MCT/MCT-Controller-Screen.png?authuser=6&hl=ar)
مرِّر سريعًا لليمين لعرض عرض واجهة المستخدم في MCT. يحتوي هذا العرض على أزرار النقل العادية الخاصة بوحدة التحكّم في الوسائط ويعرض صورة برنامج الجلسة وبياناته. تكون أزرار النقل غير المفعّلة دائرية باللون البرتقالي. جميع الملاحظات الأخرى نشطة.
اختبِر المشغّل باستخدام أزرار النقل. يجب أن تتغير حالة أزرار النقل كما هو متوقع. على سبيل المثال، عند الضغط على زر التشغيل، يجب أن يتم إيقافه وتفعيل زرَّي "إيقاف مؤقت" و"إيقاف".
مرّر سريعًا لليمين مرة أخرى لعرض طريقة عرض تُظهر إجراءات اختيارية. يحتوي كل إجراء على عنصر تحكم يعرض ما إذا كان نشطًا أم لا. وإذا كان نشطًا، يمكنك تنفيذ الإجراء بالنقر عليه.
في حالة الربط من قائمة التطبيقات التي تحتوي على خدمة متصفح الوسائط، يمكنك التمرير سريعًا لليسار مرتين للوصول إلى طرق العرض التي تتيح لك الانتقال لأعلى ولأسفل في التسلسل الهرمي لمحتوى التطبيق، أو البحث في شجرة المحتوى.
اختبار تطبيق فيديو يدويًا
استخدِم وضع تقسيم الشاشة لاختبار وحدات التحكُّم في تطبيقات الفيديو. أولاً، افتح تطبيق الفيديو في نافذة واحدة ثم افتح MCT في وضع تقسيم الشاشة.
إجراء اختبارات التحقق
يقدّم إطار عمل اختبار التحقّق اختبارات بنقرة واحدة يمكنك إجراؤها لضمان استجابة تطبيق الوسائط بشكل صحيح لطلب التشغيل.
اختبار أحد تطبيقات الهاتف
![زر الاختبار](https://developer.android.com/static/media/images/MCT/MCT-Test-Button.png?authuser=6&hl=ar)
للوصول إلى اختبارات التحقق، انقر على الزر اختبار بجانب تطبيق الوسائط.
حالة MCT
![حالة التحكّم في الوسائط](https://developer.android.com/static/media/images/MCT/MCT-Testing-Info-Screen.png?authuser=6&hl=ar)
تعرض لك طريقة العرض التالية معلومات مفصّلة حول MediaController
في MCT،
على سبيل المثال PlaybackState
والبيانات الوصفية وقائمة المحتوى التالي. يوجد زران في أعلى
يمين شريط الأدوات. يبدِّل الزر في اليسار بين السجلات القابلة للتحليل والسجلات المنسقة. يؤدي الزر الموجود على اليسار إلى تحديث العرض لعرض أحدث المعلومات.
اختيار اختبار
![صفحة الاختيار التجريبي](https://developer.android.com/static/media/images/MCT/MCT-Testing-Verification-Screen.png?authuser=6&hl=ar)
بالتمرير السريع إلى اليمين، تصل إلى عرض اختبارات إثبات الملكية، حيث يمكنك الاطّلاع على قائمة قابلة للتمرير بالاختبارات المتاحة. إذا كان الاختبار يستخدم طلب بحث، مثل التشغيل من اختبار البحث الموضح في الشكل 7، فهناك حقل نصي لإدخال سلسلة طلب البحث.
يشمل اختبار MCT اختبارات للإجراءات التالية على الوسائط، وتتم إضافة المزيد من الاختبارات باستمرار إلى المشروع:
- تشغيل
- التشغيل من "بحث Google"
- التشغيل من معرف الوسائط
- التشغيل من معرّف الموارد المنتظم (URI)
- إيقاف مؤقت
- إيقاف
- التخطّي إلى التالي
- التخطّي إلى السابق
- التخطّي إلى قائمة المحتوى التالي
- ترجيع إلى
نتائج الاختبار
![نتيجة اختبار ناجحة](https://developer.android.com/static/media/images/MCT/MCT-Testing-Success-Screen.png?authuser=6&hl=ar)
تكون منطقة النتائج في أسفل طريقة العرض فارغة في البداية. ستظهر النتائج عند إجراء اختبار. على سبيل المثال، لتشغيل التشغيل من اختبار البحث، أدخل طلب بحث في حقل النص وانقر على إجراء الاختبار. تعرض لقطة الشاشة التالية نتيجة اختبار ناجحة.
اختبار أحد تطبيقات Android TV
عند تشغيل MCT على Android TV، ستظهر لك قائمة بتطبيقات الوسائط المثبَّتة. تجدر الإشارة إلى أنّ التطبيق لن يظهر في هذه القائمة إلا إذا كان يطبّق خدمة متصفح الوسائط.
ينقلك اختيار تطبيق إلى شاشة الاختبار التي تعرض قائمة باختبارات التحقّق على يسار الصفحة.
عند إجراء اختبار، يعرض الجانب الأيسر من الشاشة معلومات حول وحدة تحكم الوسائط المحددة. لمعرفة مزيد من التفاصيل، تحقَّق من سجلّات MCT في Logcat.
يظهر رمز لوحة مفاتيح على الاختبارات التي تتطلب طلب بحث. يؤدي النقر على أحد هذه الاختبارات إلى فتح حقل إدخال للاستعلام. انقر على Enter لإجراء الاختبار.
لتسهيل عملية إدخال النص، يمكنك أيضًا استخدام الأمر adb
:
adb shell input text your-query
يمكنك استخدام "%s" لإضافة مسافة بين الكلمات. على سبيل المثال، يضيف الأمر التالي النص "hello world" إلى حقل الإدخال.
adb shell input text hello%sworld
إنشاء اختبار
يمكنك إرسال طلب سحب يتضمّن المزيد من الاختبارات التي تعتقد أنّها مفيدة. للتعرّف على كيفية إنشاء اختبارات جديدة، يمكنك الانتقال إلى MCT GitHub Wiki والاطّلاع على تعليمات اختبار التحقّق من المعلِنين.
يُرجى مراجعة تعليمات المساهمة.
مراجع إضافية
يمكن استخدام MCT مع التطبيقات التي تنفّذ واجهات برمجة تطبيقات الوسائط. للاطّلاع على مثال عن هذا التطبيق، يمكنك مراجعة Universal Android Music Player.
نرحّب دائمًا بإصلاح الأخطاء والتحسينات. يُرجى الاطّلاع على تعليمات المساهمة.