W pliku application.js utwórz główną klasę aplikacji HbbTV, która będzie wchodzić w interakcję z transmisją HbbTV. Ta klasa wchodzi w interakcję z elementami broadcastAppManager i broadcastContainer. Przykład podobnej klasy znajdziesz w artykule
Obsługa obiektu a/v transmisji.
Zmodyfikuj tę podstawową aplikację HbbTV, aby wysyłać prośby o strumień IMA i reagować na zdarzenia przerw na reklamę.
Inicjowanie aplikacji
Zainicjuj klasę aplikacji w application.js, skonfiguruj elementy
broadcastAppManager, i broadcastContainer postępując zgodnie z instrukcjami w samouczku,
Obsługa obiektu a/v transmisji.
Następnie zainicjuj nowe obiekty VideoPlayer i AdManager.
Wysyłanie prośby o strumień IMA
W metodzie HbbTVApp.onPlayStateChangeEvent() wyślij prośbę o strumień w odpowiedzi na przełączenie aplikacji na PRESENTING_PLAYSTATE. Dzięki temu Twoja aplikacja będzie gotowa do wczytania manifestu bloku reklam w odpowiedzi na zdarzenie AD_BREAK_EVENT_ANNOUNCE.
Jeśli urządzenie nie emituje prawidłowo zdarzenia PlayStateChange kontenera transmisji, użyj funkcji setInterval(), aby sprawdzić zmiany stanu odtwarzania:
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);
}
…
Nasłuchiwanie zdarzeń strumienia HbbTV
Utwórz metodę HbbTVApp.onStreamEvent(), aby nasłuchiwać zdarzeń przerw na reklamę adBreakAnnounce, adBreakStart i adBreakEnd:
Obsługa zdarzeń strumienia HbbTV
Aby obsługiwać zdarzenia strumienia HbbTV, wykonaj te czynności:
Aby wczytać manifest bloku reklam w odpowiedzi na zdarzenie
adBreakAnnounce, utwórz metodęHbbTVApp.onAdBreakAnnounce():Aby przełączyć się na odtwarzanie strumienia reklam podczas przerw na reklamę, utwórz metodę
HbbTVApp.onAdBreakStart():Aby wrócić do transmisji treści, utwórz metodę
HbbTVApp.onAdBreakEnd():
Teraz możesz wysyłać prośby o bloki reklamowe z pakietu IMA SDK i wyświetlać je w aplikacji HbbTV. Aby porównać swoją aplikację z gotową aplikacją przykładową, zapoznaj się z przykładem IMA HbbTV w GitHub.