Modes de fonctionnement du SDK
Le SDK peut fonctionner dans un ou plusieurs modes, en fonction de la réponse d'annonce reçue de l'ad server.
- Annonce unique
- Annonce qui peut être diffusée à tout moment lorsque le message
start
est envoyé auIMAAdsManager
. Aucune initialisation spéciale n'est nécessaire pour lire une seule annonce. - Série d'annonces
- Plusieurs annonces diffusées les unes après les autres lorsque le message
start
est envoyé auIMAAdsManager
. Aucune initialisation spéciale n'est nécessaire pour lire une seule série d'annonces. - Règles relatives aux annonces
- Playlist de coupures publicitaires programmées à certains moments sur un contenu spécifique. En mode "Règles relatives aux annonces", le message
start
est ignoré. Plusieurs coupures publicitaires peuvent être planifiées dans une même playlist (pré-roll, mid-roll ou post-roll, par exemple). Pour en savoir plus sur l'implémentation, consultez la section Règles relatives aux annonces ci-dessous.
Règles relatives aux annonces
Le SDK IMA pour tvOS est compatible avec les playlists d'annonces entièrement automatisées. Cette fonctionnalité insère des coupures publicitaires dans le contenu, comme spécifié dans Google Ad Manager lors du trafficking de vos annonces. Il simplifie également considérablement le code du lecteur vidéo nécessaire pour prendre en charge 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, telles que "Toujours diffuser la coupure publicitaire au début du contenu" ou "Jouer une coupure publicitaire d'une minute toutes les 30 minutes du 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 qui ont été spécifiées.
- Lors de l'initialisation de
AdsManager
, un objetIMAContentPlayhead
est transmis via l'appelinitializeWithContentPlayhead:adsRenderingSettings:
. Si vous utilisez un lecteur AVPlayer pour afficher votre contenu, vous transmettez une instance deIMAAVPlayerContentPlayhead
au SDK lorsque vous créez votreadDisplayContainer
. Cet objet permet de suivre la progression de la lecture du contenu afin que les coupures publicitaires soient automatiquement insérées aux moments spécifiés dans Ad Manager.
Avec AVPlayer:
IMAContentPlayhead *contentPlayhead = [[IMAAVPlayerContentPlayhead alloc] initWithAVPlayer:self.contentAVPlayer]; IMAAdsRequest *request = [[IMAAdsRequest alloc] initWithAdTagUrl:adTagUrl adDisplayContainer:adDisplayContainer contentPlayhead:contentPlayhead userContext:nil];
Sans AVPlayer :
- Implémentez l'interface
IMAContentPlayhead
. - Implémentez
currentTime
pour renvoyer l'heure actuelle de votre lecteur vidéo. - Modifiez l'appel d'initialisation
IMAAdsManager
pour utiliserinitializeWithContentPlayhead:self
.
- Implémentez l'interface
- La classe IMAAdsManagerDelegate permet de mettre en pause et de réactiver le contenu lors de la lecture des coupures publicitaires.
Remarque:Lorsque la lecture du contenu est terminée ou que l'utilisateur a arrêté la lecture, veillez à appeler contentComplete
sur IMAAdsLoader
afin de signaler au SDK que la lecture du contenu est terminée. Le SDK lance ensuite la coupure publicitaire post-roll, le cas échéant.
L'événement ALL_ADS_COMPLETED
est déclenché lorsque toutes les coupures publicitaires ont été lues. En outre, notez que le suivi du contenu commence lorsque la méthode initializeWithContentPlayhead:adsRenderingSettings
de IMAAdsManager
est appelée. Vous devez toujours appeler initializeWithContentPlayhead:adsRenderingSettings
avant de lire le contenu.