Erstelle in application.js die Hauptklasse für deine HbbTV-App, die mit der HbbTV-Übertragung interagiert. Diese Klasse interagiert mit broadcastAppManager und broadcastContainer. Ein Beispiel für eine ähnliche Klasse finden Sie unter Broadcast-A/V-Objekt verarbeiten.
Ändern Sie diese HbbTV-Basis-App so, dass ein IMA-Stream angefordert und auf Ereignisse für Werbeunterbrechungen reagiert wird.
Anwendung initialisieren
Initialisieren Sie die Anwendungsklasse in application.js, richten Sie broadcastAppManager und broadcastContainer gemäß dem Tutorial Broadcast-A/V-Objekt verarbeiten ein.
Initialisieren Sie anschließend neue VideoPlayer- und AdManager-Objekte.
IMA-Streamanfrage stellen
Stellen Sie in der Methode HbbTVApp.onPlayStateChangeEvent() eine Streamanfrage als Reaktion auf das Umschalten der App zu PRESENTING_PLAYSTATE. Bei diesem Ansatz wird Ihre App darauf vorbereitet, das Manifest des Anzeigen-Pods als Reaktion auf ein AD_BREAK_EVENT_ANNOUNCE-Ereignis zu laden.
Wenn auf Ihrem Gerät das Ereignis PlayStateChange
des Broadcast-Containers nicht richtig ausgegeben wird, können Sie mit der Funktion setInterval() nach Änderungen des Wiedergabestatus suchen:
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);
}
…
Auf HbbTV-Stream-Ereignisse warten
Erstellen Sie die Methode HbbTVApp.onStreamEvent(), um auf die Ereignisse der Werbeunterbrechung adBreakAnnounce, adBreakStart und adBreakEnd zu warten:
HbbTV-Streamereignisse verarbeiten
Führen Sie die folgenden Schritte aus, um die HbbTV-Streamereignisse zu verarbeiten:
Um das Ad-Pod-Manifest als Reaktion auf das
adBreakAnnounce-Ereignis zu laden, erstellen Sie dieHbbTVApp.onAdBreakAnnounce()-Methode:Wenn Sie während Werbeunterbrechungen zur Wiedergabe des Anzeigenstreams wechseln möchten, erstellen Sie die Methode
HbbTVApp.onAdBreakStart():Um zur Übertragung des Inhalts zurückzukehren, erstellen Sie die Methode
HbbTVApp.onAdBreakEnd():
Sie fordern jetzt IMA SDK-Anzeigenblöcke in Ihrer HbbTV-App an und präsentieren sie. Wenn Sie Ihre App mit einer fertigen Beispiel-App vergleichen möchten, sehen Sie sich das IMA HbbTV-Beispiel auf GitHub an.