تنفيذ الراديو باستخدام وسائل الإعلام

يتم تنفيذ واجهة مستخدم الراديو كتطبيق مستقل. يمكن العثور على تعليمات حول كيفية دمج واجهة مستخدم الراديو مع جهاز الراديو في مقالة تنفيذ الراديو.

يوضّح القسم التالي كيفية دمج واجهة مستخدِم "الراديو" مع الوسائط لتقديم تجربة سلسة تتيح للمستخدمين التفاعل مع مصادر الوسائط والراديو كما لو كان تطبيقًا واحدًا.

مسار المستخدم في تبديل مصدر الوسائط

يوضِّح المخطّط البياني التالي كيفية تنفيذ عملية التنفيذ المرجعية لتطبيق "الراديو والوسائط" لمسار المستخدم في تبديل التطبيقات.

مسار المستخدم في تبديل مصدر الوسائط

الشكل 1: مسار المستخدم في تبديل مصدر الوسائط

لتوفير انتقال سلس بين "الراديو" والتطبيقات الأخرى في "الوسائط"، تحدِّد مكتبة car-media-common أهداف Android التي يمكن استخدامها لبدء أداة اختيار مصدر الوسائط. في AOSP، يتم تنفيذ هذا الاختيار في "مشغّل التطبيقات"، ما يعرض واجهة المستخدم نفسها لتشغيل التطبيقات، ولكن يتم فلترتها لعرض مصادر الوسائط فقط.

يمكن لمصنّعي المعدّات الأصلية اختيار استخدام ميزة "مشغّل التطبيقات" الحالية كما هي، أو استخدام أداة اختيار مخصّصة لمصدر الوسائط.

يمكن أن يعمل أداة الاختيار بوضعَين:

  • المسار العادي: بعد استخدام أداة الاختيار، يتم عرض المصدر المحدّد في "الوسائط" كي تتمكّن من تصفّح محتواه.
  • بصفتك مفتاح تبديل: يتم استخدام أداة اختيار للتبديل بين المصادر، ولكن لا يتم عرض الوسائط للمستخدم. وينطبق ذلك على رمز أداة الاختيار في الصفحة الرئيسية. بعد اختيار مصدر، يتم عرض أحدث شاشة سابقة للمستخدم (في هذه الحالة، الصفحة الرئيسية).

يمكن الحصول على النية المستخدَمة للتبديل بين مصادر الوسائط من الطريقة MediaSource#getSourceSelectorIntent() التي تقبل popup قيمة منطقية تعرض نية لبدء كل عملية من عمليات البث الموضّحة أعلاه.

يتم تحديد النوايا الفعلية على الرابط packages/apps/Car/libs/car-media-common/res/values/config.xml. لأجل تخصيص هذا الإعداد، استخدِم الصور المتراكبة في وقت الإنشاء.

استبدال تطبيق "راديو Google"

بما أنّ تطبيق "الراديو" ينفِّذ ميزتَي "تصفُّح الوسائط" و"جلسة الوسائط"، يتم عرض تطبيق "الراديو" في مشغِّل التطبيقات. لمنع تشغيل الوسائط عندما ينقر المستخدم على الرمز، يجب توفُّر عنصرين. يجب أن يستوفي الراديو الشروط التالية:

  • أن يكون لديك نشاط مشغِّل
  • أن يتمّ الإقرار به كـ مصدر مخصّص لإجراء ذلك، أضِف اسم المكوّن إلى مفتاح custom_media_packages في car-media-common/res/values/config.xml.

القيود المفروضة على تجربة المستخدِم

يجب أن تلتزم الوسائط بجميع القيود المفروضة على تجربة المستخدم في ما يتعلّق بإلهاء السائقين. لتنفيذ ذلك، يجب أن يستمع Media إلى CarUXRestrictionManager وينفّذ جميع سياساته.

  • يجب أن تتصل الوسائط بمكتبة Car وتحصل على مثيل من CarUXRestrictionManager.
  • يجب أن تشترك الوسائط في التحديثات في قائمة CarUxRestrictions وتنفذها على النحو الموضّح في المستندات.
  • من المهم بشكل خاص بالنسبة إلى الوسائط ما يلي:
    • UX_RESTRICTIONS_NO_SETUP. في هذه الحالة، يجب إيقاف مسار تسجيل الدخول.
    • UX_RESTRICTIONS_LIMIT_STRING_LENGTH. يجب أن تقتصر رسائل الخطأ والنصوص الأخرى المقدَّمة من تطبيقات الوسائط على طولٍ معيّن.