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

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

يصف القسم التالي كيفية دمج Radio UI مع Media لتوفير تجربة سلسة للمستخدمين تتيح للمستخدمين التفاعل مع مصادر الوسائط والراديو كما لو كانوا تطبيقًا واحدًا.

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

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

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

الشكل 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. يجب أن تقتصر رسائل الخطأ والنصوص الأخرى المقدَّمة من تطبيقات الوسائط على طول محدّد.