ads_manager.js bölümünde, akış istekleri gönderen, reklam kapsülü manifestini alan, IMA akış etkinliklerini dinleyen ve emsg etkinliklerini IMA SDK'sına ileten IMA SDK StreamManager için bir sarmalayıcı sınıf tanımlayın.
ads_manager.js içinde, IMA HbbTV örnek uygulaması aşağıdaki yöntemleri ayarlar:
requestStream()onStreamEvent()onEmsgEvent()loadAdPodManifest()
Reklam yöneticisini başlatma
Reklam yöneticisi sınıfını başlatın ve IMA akış etkinlikleri için işleyiciler ayarlayın. Bu çağrıda, VideoPlayer.setEmsgEventHandler() yöntemiyle emsg etkinlik işleyicisini ayarlayın.
Reklam kapsülü akışı isteğinde bulunma
Google Ad Manager ağ kodunuzu ve akışın özel öğe anahtarını kullanarak PodStreamRequest
nesne oluşturmak için AdManager.requestStream() yöntemini oluşturun. Aşağıdaki akış parametreleriyle IMA örnek DASH kapsül yayınlama akışını kullanarak HbbTV uygulamanızı test edin:
- Ağ kodu:
'21775744923' - Özel öğe anahtarı:
'hbbtv-dash'
Reklam yayını etkinliklerini dinleme
Uygulamanızın IMA akış etkinliklerine (STREAM_INITIALIZED, AD_BREAK_STARTED ve AD_BREAK_ENDED) verdiği yanıtı işlemek için AdManager.onStreamEvent() yöntemini oluşturun.
Reklam akışı meta verilerini işleme
emsg etkinlik bilgilerini IMA'ya iletmek için AdManager.onEmsgEvent() yöntemini StreamManager.processMetadata() yöntemini kullanarak oluşturun. Video oynatıcı sınıfı, VideoPlayer.setEmsgEventHandler() yöntemiyle bu yöntemi çağırır.
Reklam kapsülü manifestini yükleyin
Reklam kapsülü manifestini video oynatıcıyla önceden yüklemek için AdManager.loadAdPodManifest() yöntemini oluşturun. Yöntem: DASH pod manifesti bölümündeki yapıyı kullanarak kimliği doğrulanmış bir manifest URL'si oluşturun.
HbbTV örnek uygulaması, rastgele oluşturulmuş benzersiz bir adBreakId değeri kullanır. Üretim uygulamalarında adBreakId değeri, her reklam arası için bir artan alfanümerik dizedir (ör. ab-001). adBreakId değerinin, reklam arasını izleyen tüm kullanıcılar için aynı değer olduğunu doğrulayın. adBreakId değeri almak için DAI Ad Break API'yi kullanmanızı öneririz.
Üretim ortamında, HbbTV akışı etkinliğine adBreakId değeri ve podDuration
değerini ekleyin AD_BREAK_ANNOUNCE.
Ardından, HbbTV yayınıyla etkileşime giren HbbTV uygulamanız için ana uygulama sınıfını oluşturun.