في ads_manager.js، حدِّد فئة التفاف لـ StreamManager في حزمة IMA SDK تُرسِل طلبات البث، وتحصل على بيان مجموعة الإعلانات المتسلسلة، وتستمع إلى أحداث البث في حزمة IMA، وتمرِّر أحداث emsg إلى حزمة IMA SDK.
في ads_manager.js، يضبط تطبيق IMA HbbTV النموذجي الطرق التالية:
requestStream()onStreamEvent()onEmsgEvent()loadAdPodManifest()
تهيئة "مدير الإعلانات"
ابدأ فئة "مدير الإعلانات" واضبط أدوات معالجة أحداث بث IMA. في هذا الطلب، اضبط معالج أحداث emsg باستخدام الطريقة VideoPlayer.setEmsgEventHandler().
إرسال طلب لبث مجموعة إعلانات متسلسلة
أنشئ طريقة AdManager.requestStream() لإنشاء عنصر PodStreamRequest
باستخدام معرّف شبكة "إدارة إعلانات Google" ومفتاح
الأصل المخصّص الخاص بالبث. اختبِر تطبيق HbbTV باستخدام عيّنة من بث عرض الإعلانات المتسلسلة بتنسيق DASH من IMA مع معلَمات البث التالية:
- معرِّف الشبكة:
'21775744923' - مفتاح العنصر المخصّص:
'hbbtv-dash'
الاستماع إلى أحداث بث الإعلانات
أنشئ طريقة AdManager.onStreamEvent() للتعامل مع استجابة تطبيقك لأحداث بث "إعلانات الوسائط التفاعلية"، STREAM_INITIALIZED وAD_BREAK_STARTED وAD_BREAK_ENDED.
التعامل مع البيانات الوصفية لتدفق الإعلانات
لتمرير معلومات حدث emsg إلى IMA، أنشئ طريقة AdManager.onEmsgEvent() باستخدام الطريقة StreamManager.processMetadata(). تستدعي فئة مشغّل الفيديو هذه الطريقة باستخدام الطريقة VideoPlayer.setEmsgEventHandler().
تحميل بيان مجموعة الإعلانات المتسلسلة
أنشئ طريقة AdManager.loadAdPodManifest() لتحميل بيان مجموعة الإعلانات المتسلسلة مسبقًا باستخدام مشغّل الفيديو. أنشئ عنوان URL لبيان مصادَق عليه باستخدام البنية الواردة في الطريقة: بيان مجموعة DASH.
يستخدم
نموذج تطبيق HbbTV
قيمة adBreakId فريدة يتم إنشاؤها عشوائيًا. في التطبيقات المباشرة، تكون قيمة
adBreakId سلسلة أبجدية رقمية، مثل ab-001،
تزداد بمقدار واحد لكل فاصل إعلاني. تأكَّد من أنّ قيمة adBreakId هي نفسها لجميع مشاهدي الفاصل الإعلاني. للحصول على قيمة adBreakId، ننصحك باستخدام DAI Ad Break API.
في بيئة الإنتاج، أدرِج القيمة adBreakId والقيمة podDuration
في حدث بث HbbTV AD_BREAK_ANNOUNCE.
بعد ذلك، أنشئ فئة التطبيق الرئيسية لتطبيق HbbTV التي تتفاعل مع بث HbbTV.