Pour discuter de nos produits et nous faire part de vos commentaires, rejoignez le canal Discord officiel Ad Manager sur le serveur de la communauté Google Advertising and Measurement.
Restez organisé à l'aide des collections
Enregistrez et classez les contenus selon vos préférences.
Modes de fonctionnement du SDK
Le SDK peut fonctionner dans un ou plusieurs modes, selon la réponse qu'il reçoit de l'annonce
Google Cloud.
Annonce unique
Annonce qui peut être lue à tout moment lorsque start
est envoyé au IMAAdsManager. Aucune initialisation spéciale
est nécessaire pour lire une seule annonce.
Série d'annonces
Plusieurs annonces sont diffusées les unes après les autres lorsque le message start est envoyé à
le IMAAdsManager. Aucune initialisation spéciale n'est nécessaire
pour diffuser une seule série d'annonces.
Règles relatives aux annonces
Playlist de coupures publicitaires programmées à certains moments pour des périodes spécifiques
contenus. Le message start est ignoré en mode de règles relatives aux annonces. Il peut y avoir
comporter plusieurs coupures publicitaires programmées au sein d'une même playlist (pré-roll,
mid-roll, post-roll). Pour en savoir plus sur l'implémentation, consultez la
Règles relatives aux annonces ci-dessous.
Règles relatives aux annonces
IMA
Le SDK tvOS 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 "faire une pause 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é.
Lors de l'initialisation de AdsManager, un IMAContentPlayhead
est transmis via initializeWithContentPlayhead:adsRenderingSettings:.
. Si vous utilisez un lecteur AVPlayer pour afficher votre contenu, vous transmettez une valeur
instance de IMAAVPlayerContentPlayhead au SDK lorsque vous créez votre
adDisplayContainer Cet objet sert à suivre la progression de la lecture du contenu afin que l'annonce
sont automatiquement insérées aux moments spécifiés dans Ad Manager.
Implémentez currentTime pour renvoyer l'heure actuelle de votre
du lecteur vidéo.
Remplacez l'appel d'initialisation IMAAdsManager par
utiliser initializeWithContentPlayhead:self.
Le gestionnaire IMAAdsManagerDelegate
permet de mettre en pause et de reprendre la lecture d'un contenu lors de la lecture de coupures publicitaires.
Remarque:Lorsque la lecture du contenu est terminée ou
l'utilisateur a arrêté la lecture, veillez à appeler contentComplete.
sur le IMAAdsLoader pour signaler au SDK que le contenu
a fini de jouer. Le SDK lit ensuite la coupure publicitaire post-roll, le cas échéant.
L'événement ALL_ADS_COMPLETED est déclenché lorsque toutes les coupures publicitaires comportent
a déjà été lu. De plus, notez que le suivi du contenu commence lorsque
initializeWithContentPlayhead:adsRenderingSettings de IMAAdsManager
est appelée et vous devez toujours appeler initializeWithContentPlayhead:adsRenderingSettings
avant de lire le contenu.
Sauf indication contraire, le contenu de cette page est régi par une licence Creative Commons Attribution 4.0, et les échantillons de code sont régis par une licence Apache 2.0. Pour en savoir plus, consultez les Règles du site Google Developers. Java est une marque déposée d'Oracle et/ou de ses sociétés affiliées.
Dernière mise à jour le 2025/08/31 (UTC).
[null,null,["Dernière mise à jour le 2025/08/31 (UTC)."],[[["\u003cp\u003eThe tvOS SDK utilizes a WebView for ad requests, parsing responses, tracking, and rendering the ad UI.\u003c/p\u003e\n"],["\u003cp\u003eIt supports various ad formats including single ads, ad pods, and ad rules (playlists of ad breaks).\u003c/p\u003e\n"],["\u003cp\u003eAd rules, managed through Google Ad Manager, allow for automated ad insertion at designated times within the content.\u003c/p\u003e\n"],["\u003cp\u003eThe SDK uses \u003ccode\u003eIMAContentPlayhead\u003c/code\u003e, which integrates with AVPlayer or a custom implementation, to synchronize ad breaks with content playback.\u003c/p\u003e\n"],["\u003cp\u003eUpon content completion, calling \u003ccode\u003econtentComplete\u003c/code\u003e on \u003ccode\u003eIMAAdsLoader\u003c/code\u003e triggers any scheduled post-roll ads and signals the completion of all ads.\u003c/p\u003e\n"]]],[],null,["# Automate ad playlists\n\n| **Note:** The tvOS SDK uses a WebView to load a JavaScript back end. This WebView is used to make ad requests, parse responses, ping tracking URLs, and render the ad UI.\n\nSDK operation modes\n-------------------\n\nThe SDK can operate in one or more modes, depending on the ad response it receives from the ad\nserver.\n\nSingle ad\n: An ad that can be played at any time when the `start`\n message is sent to the `IMAAdsManager`. No special initialization\n is necessary to play a single ad.\n:\n\nAd pod\n: Several ads that play back to back when the `start` message is sent to\n the `IMAAdsManager`. No special initialization is necessary to\n play a single ad pod.\n\nAd rules\n: A playlist of ad breaks scheduled at certain times against particular\n content. The `start` message is ignored in ad rules mode. There can\n be several ad breaks scheduled within a single playlist (e.g., pre-roll,\n mid-roll, post-roll). For further implementation details, see the\n [Ad Rules](#ad-rules) section below.\n\nAd rules\n--------\n\nIMA\ntvOS SDK supports fully automated ad playlists. This feature\ninserts ad breaks into the content as specified in\n[Google Ad Manager](//admanager.google.com/)\nwhen trafficking your ads. It also greatly simplifies the video player code\nnecessary to support ad breaks, including pre-rolls, mid-rolls, and post-rolls.\n\n- When trafficking ads in Ad Manager, it is possible to specify various ad rules like \"always play ad break at the beginning of the content\" or \"play a one-minute ad break every 30 minutes of content\".\n- When ads are requested, the ad server can return an ad playlist. The SDK processes the playlist and automatically schedules the ad breaks that have been specified.\n- When initializing the `AdsManager`, an `IMAContentPlayhead` object is passed in via the `initializeWithContentPlayhead:adsRenderingSettings:` call. If you are using an AVPlayer to display your content, you pass an instance of `IMAAVPlayerContentPlayhead` to the SDK when you create your `adDisplayContainer`. This object is used to track the progress of the content playback so ad breaks are automatically inserted at the times specified in Ad Manager. \n\n **With AVPlayer:** \n\n ```objective-c\n IMAContentPlayhead *contentPlayhead =\n [[IMAAVPlayerContentPlayhead alloc] initWithAVPlayer:self.contentAVPlayer];\n IMAAdsRequest *request = [[IMAAdsRequest alloc] initWithAdTagUrl:adTagUrl\n adDisplayContainer:adDisplayContainer\n contentPlayhead:contentPlayhead\n userContext:nil];\n ```\n\n **Without AVPlayer:**\n 1. Implement the `IMAContentPlayhead` interface.\n 2. Implement `currentTime` to return the current time of your video player.\n 3. Change the `IMAAdsManager` initialization call to use `initializeWithContentPlayhead:self`.\n- The [IMAAdsManagerDelegate](/interactive-media-ads/docs/sdks/tvos/client-side/reference/Protocols/IMAAdsManagerDelegate) is used to pause and resume the content as ad breaks are played.\n\n**Note:** When the content has finished playing or\nthe user has stopped playback, be sure to call `contentComplete`\non the `IMAAdsLoader` in order to signal to the SDK that the content\nhas finished playing. The SDK then plays the post-roll ad break, if one has been scheduled.\nThe `ALL_ADS_COMPLETED` event is raised when all ad breaks have\nbeen played. In addition, note that content tracking begins when\n`IMAAdsManager`'s `initializeWithContentPlayhead:adsRenderingSettings`\nmethod is called and you should always call `initializeWithContentPlayhead:adsRenderingSettings`\nbefore playing content."]]