در application.js ، کلاس اصلی برنامه HbbTV خود را که با پخش HbbTV در تعامل است، ایجاد کنید. این کلاس با broadcastAppManager و broadcastContainer در تعامل است. برای مثالی از یک کلاس مشابه، به بخش مدیریت شیء broadcast a/v مراجعه کنید.
این برنامه پایه HbbTV را برای درخواست پخش IMA و پاسخ به رویدادهای وقفه تبلیغاتی تغییر دهید.
مقداردهی اولیه برنامه
کلاس برنامه را در application.js مقداردهی اولیه کنید، broadcastAppManager و broadcastContainer را طبق آموزش مدیریت شیء broadcast a/v تنظیم کنید. پس از آن، اشیاء جدید VideoPlayer و AdManager را آغاز کنید.
درخواست پخش IMA بدهید
In the HbbTVApp.onPlayStateChangeEvent() method, make a stream request in response to the app switching to the PRESENTING_PLAYSTATE . This approach prepares your app to load the ad pod manifest in response to an AD_BREAK_EVENT_ANNOUNCE event.
اگر دستگاه شما رویداد PlayStateChange مربوط به کانتینر پخش را به درستی منتشر نمیکند، از تابع setInterval() برای بررسی تغییرات playstate استفاده کنید:
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، مراحل زیر را انجام دهید:
برای بارگذاری مانیفست ad pod در پاسخ به رویداد
adBreakAnnounce، متدHbbTVApp.onAdBreakAnnounce()را ایجاد کنید:برای تغییر به پخش جریان تبلیغات در طول وقفههای تبلیغاتی، متد
HbbTVApp.onAdBreakStart()را ایجاد کنید:برای بازگشت به پخش محتوا، متد
HbbTVApp.onAdBreakEnd()را ایجاد کنید:
اکنون شما در حال درخواست و نمایش پادهای تبلیغاتی IMA SDK در برنامه HbbTV خود هستید. برای مقایسه برنامه خود با یک برنامه نمونه تکمیل شده، به نمونه IMA HbbTV در GitHub مراجعه کنید.