في 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.