في application.js، أنشئ الفئة الرئيسية لتطبيق HbbTV الذي يتفاعل مع بث HbbTV. يتفاعل هذا الصف مع broadcastAppManager وbroadcastContainer. للاطّلاع على مثال لفئة مشابهة، راجِع
التعامل مع عنصر البث الصوتي/المرئي.
عدِّل تطبيق HbbTV الأساسي هذا لطلب بث IMA والاستجابة لأحداث فواصل الإعلانات.
إعداد التطبيق
ابدأ بتعريف فئة التطبيق في application.js، ثم أعدّ broadcastAppManager وbroadcastContainer باتّباع البرنامج التعليمي التعامل مع عنصر البث الصوتي/المرئي.
بعد ذلك، ابدأ إنشاء عناصر VideoPlayer وAdManager جديدة.
إرسال طلب بث IMA
في طريقة HbbTVApp.onPlayStateChangeEvent()، أرسِل طلب بث استجابةً لتبديل التطبيق إلى PRESENTING_PLAYSTATE. يؤدي اتّباع هذا الأسلوب إلى إعداد تطبيقك لتحميل بيان مجموعة الإعلانات المتسلسلة استجابةً لحدث AD_BREAK_EVENT_ANNOUNCE.
إذا لم يُصدر جهازك حاوية البث PlayStateChange
event بشكل صحيح، استخدِم الدالة setInterval() للتحقّق من تغييرات حالة التشغيل:
setInterval(function() {
if (!subscribedToStreamEvents &&
this.broadcastContainer.playState == PRESENTING_PLAYSTATE) {
subscribedToStreamEvents = true;
this.broadcastContainer.addStreamEventListener(
STREAM_EVENT_URL, 'eventItem', function(event) {
this.onStreamEvent(event);
}.bind(this));
debugView.log('Subscribing to stream events');
this.adManager.requestStream(NETWORK_CODE, CUSTOM_ASSET_KEY);
}
…
الاستماع إلى أحداث بث HbbTV
أنشئ طريقة HbbTVApp.onStreamEvent() للاستماع إلى أحداث الفواصل الإعلانية
adBreakAnnounce وadBreakStart وadBreakEnd:
التعامل مع أحداث بث HbbTV
للتعامل مع أحداث بث HbbTV، أكمِل الخطوات التالية:
لتحميل بيان حزمة الإعلانات استجابةً للحدث
adBreakAnnounce، أنشئ الطريقةHbbTVApp.onAdBreakAnnounce():للانتقال إلى تشغيل بث الإعلانات أثناء الفواصل الإعلانية، أنشئ طريقة
HbbTVApp.onAdBreakStart():للرجوع إلى بث المحتوى، أنشئ طريقة
HbbTVApp.onAdBreakEnd()على النحو التالي:
أنت الآن تطلب وتعرض حزم إعلانات IMA SDK في تطبيق HbbTV. ولمقارنة تطبيقك بتطبيق نموذجي مكتمل، يمكنك الاطّلاع على نموذج IMA HbbTV على GitHub.