ใน application.js
ให้สร้างคลาสหลักสำหรับแอป HbbTV ที่โต้ตอบ
กับการออกอากาศ HbbTV ชั้นเรียนนี้โต้ตอบกับ broadcastAppManager
และ broadcastContainer
ดูตัวอย่างคลาสที่คล้ายกันได้ที่
การจัดการออบเจ็กต์ a/v ของการออกอากาศ
แก้ไขแอป HbbTV พื้นฐานนี้เพื่อขอสตรีม IMA และตอบสนองต่อเหตุการณ์ช่วงพักโฆษณา
เริ่มต้นแอปพลิเคชัน
เริ่มต้นคลาสแอปพลิเคชันใน application.js
ตั้งค่า
broadcastAppManager
และ broadcastContainer
โดยทำตามบทแนะนำ
การจัดการออบเจ็กต์ a/v ที่ออกอากาศ
หลังจากนั้น ให้เริ่มต้นออบเจ็กต์ VideoPlayer
และ AdManager
ใหม่
ส่งคำขอสตรีม IMA
ในHbbTVApp.onPlayStateChangeEvent()
ให้ส่งคำขอสตรีมเพื่อตอบสนองต่อการเปลี่ยนแอปเป็นPRESENTING_PLAYSTATE
แนวทางนี้
เตรียมแอปให้โหลดไฟล์ Manifest ของพ็อดโฆษณาเพื่อตอบสนองต่อเหตุการณ์ 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 ให้ทำตามขั้นตอนต่อไปนี้
หากต้องการโหลดไฟล์ Manifest ของพ็อดโฆษณาเพื่อตอบสนองต่อเหตุการณ์
adBreakAnnounce
ให้ สร้างเมธอดHbbTVApp.onAdBreakAnnounce()
ดังนี้หากต้องการเปลี่ยนไปเล่นสตรีมโฆษณาในระหว่างช่วงพักโฆษณา ให้สร้างเมธอด
HbbTVApp.onAdBreakStart()
ดังนี้หากต้องการกลับไปที่การออกอากาศเนื้อหา ให้สร้างเมธอด
HbbTVApp.onAdBreakEnd()
ดังนี้
ตอนนี้คุณกำลังขอและแสดงพ็อดโฆษณา IMA SDK ในแอป HbbTV อยู่ หากต้องการเปรียบเทียบแอปของคุณกับแอปตัวอย่างที่เสร็จสมบูรณ์แล้ว โปรดดูตัวอย่าง IMA HbbTV ใน GitHub