Le SDK IMA pour Android est compatible avec les playlists d'annonces entièrement automatisées. Cette fonctionnalité insère des coupures publicitaires dans le contenu, comme indiqué dans Google Ad Manager lors du trafficking de vos annonces. De plus, il simplifie considérablement le code du lecteur vidéo nécessaires pour accepter les coupures publicitaires, y compris les annonces vidéo pré-roll, mid-roll et post-roll.
- Lors du trafficking des annonces dans Ad Manager, vous pouvez spécifier différentes règles relatives aux annonces comme "Toujours lire la coupure publicitaire au début du contenu" ou "joue une chanson d'une coupure publicitaire d'une minute toutes les 30 minutes de contenu".
- Lorsque des annonces sont demandées, l'ad server peut renvoyer une playlist d'annonces. Le SDK traite la playlist et planifie automatiquement les coupures publicitaires spécifié.
- Étant donné qu'Android utilise le même lecteur vidéo pour la lecture des annonces et du contenu,
Si vous envisagez d'appliquer des règles relatives aux annonces, vous devez enregistrer la position de la tête de lecture
au début de l'annonce, puis rechercher cette position lorsque l'annonce se termine.
Veillez à implémenter l'interface
VideoAdPlayer
dans votre vidéo. joueur. Ainsi, les coupures publicitaires sont automatiquement insérées au heures spécifiées dans Ad Manager.private boolean playingContent = true; private int contentPosition = -1; private List
callbacks = new ArrayList (); @Override public void addCallback(VideoAdPlayerCallback callback) { callbacks.add(callback); } @Override public void removeCallback(VideoAdPlayerCallback callback) { callbacks.remove(callback); } public void loadContent() { playingContent = true; load(CONTENT_URL); } @Override public void loadAd(String mediaUrl) { playingContent = false; load(mediaUrl); } public void pauseContent() { savePosition(); pause(); } @Override public void pauseAd() { pause(); } private void pause() { myVideoView.pause(); for (VideoAdPlayerCallback callback : callbacks) { callback.onPause(); } } public void resumeContent() { loadContent(); if (contentPosition > 0) { restorePosition(); } resume(); } @Override public void resumeAd() { resume(); } private void resume() { myVideoView.start(); for (VideoAdPlayerCallback callback : callbacks) { callback.onResume(); } } public void savePosition() { contentPosition = myVideoView.getCurrentPosition(); } public void restorePosition() { myVideoView.seekTo(contentPosition); } CONTENT_PAUSE_REQUESTED
etCONTENT_RESUME_REQUESTED
sont utilisés pour mettre en pause et reprendre la lecture du contenu lors de la lecture des coupures publicitaires. Recommander consultez la documentation correspondante de l'API pour en savoir plus sur ces événements.
Remarque:Lorsque la lecture du contenu est terminée ou
l'utilisateur a arrêté la lecture, veillez à appeler
AdsLoader.contentComplete
pour signaler au SDK que le contenu est terminé. Le SDK
la coupure publicitaire post-roll, si elle a été programmée. La
ALL_ADS_COMPLETED
événement est déclenché lorsque TOUTES les coupures publicitaires sont déclenchées.
ont été joués. De plus, notez que le suivi du contenu commence lorsque
init()
est appelé, et vous devez toujours appeler init()
.
avant de lire le contenu.