Segnalibri

Questa guida mostra come implementare i preferiti utilizzando l'SDK IMA DAI quando si utilizza l'inserimento di annunci dinamici (DAI) per gli stream video on demand (VOD). Ciò presuppone un'implementazione di IMA DAI funzionante, come quella presentata in Inizia.

Che cos'è il salvataggio dei preferiti?

L'aggiunta ai preferiti consente di salvare e tornare a un punto specifico nello stream di contenuti. Supponiamo che un utente guardi cinque minuti di contenuti esce dal video stream e poi vi torna. L'aggiunta di segnalibri salva la posizione dell'utente nello stream, in modo che quest'ultimo possa riprendere da dove interrotto, offrendo allo spettatore un'esperienza fluida.

L'inserimento di annunci dinamici nei segnalibri

Quando aggiungi uno stream DAI ai preferiti, devi registrare l'ID e l'ora dello streaming quando l'utente abbandona il video. Quando l'utente torna, richiedi di nuovo lo stream e vai al momento salvato. Poiché ogni istanza della richiesta lo stream può includere interruzioni pubblicitarie di durata diversa semplicemente salvando lo stream tempo non funzionerà. Quello che vogliamo fare è continuare tempo dei contenuti.

Metodi di conversione in soccorso

L'SDK IMA DAI fornisce una coppia di metodi per richiedere l'ora dei contenuti per un determinato ora dello stream e l'ora dello stream per un determinato ora dei contenuti. Con questi metodi di conversione puoi memorizzare i preferiti tempo dei contenuti e poi cerca la durata dello streaming corrispondente tra la nuova istanza del flusso. Ecco l'approccio, incluso un link a un'app di esempio che mostra un'implementazione funzionante dei segnalibri.

Salvare i preferiti

Salva un preferito quando l'Attività è in pausa.

Saves the current time as a bookmark in the current video.
Function saveBookmarkTime(player as Object,  streamManager as Object) as Void
  m.videos[player.video.index].bookmarkTime =
      streamManager.getContentTime(player.currentTime * 1000)
End Function

Caricamento preferiti in corso...

Carica il preferito quando richiedi di nuovo uno stream. Fa parte dell'implementazione l'interfaccia VideoStreamPlayer.

player.loadUrl = Function(streamInfo as Object)
  ...
  If m.video.bookmarkTime > 0
    streamTime = m.streamManager.getStreamTime(m.video.bookmarkTime)
    m.videoPlayer.seek(streamTime)
  End If
End Function

App di esempio

App di esempio