Les SDK IMA permettent d'intégrer facilement des annonces multimédias à vos sites Web et applications. Les SDK IMA peuvent demander des annonces à n'importe quel ad server conforme à la norme VAST et gérer la lecture des annonces dans vos applications. Avec les SDK IMA DAI, les applications envoient une demande de flux pour les annonces et le contenu vidéo (VOD ou contenu en direct). Le SDK renvoie ensuite un flux vidéo combiné, ce qui vous évite d'avoir à gérer le basculement entre les vidéos d'annonces et de contenu dans votre application.
Sélectionnez la solution DAI qui vous intéresse.
Insertion dynamique de séries d'annonces
Les SDK IMA permettent d'intégrer facilement des annonces multimédias à vos sites Web et applications. Les SDK IMA peuvent demander des annonces à n'importe quel ad server conforme à la norme VAST et gérer la lecture des annonces dans vos applications. Avec les SDK IMA DAI, les applications envoient une demande de flux pour les annonces et le contenu vidéo (VOD ou contenu en direct). Le SDK renvoie ensuite un flux vidéo combiné, ce qui vous évite d'avoir à gérer le basculement entre les vidéos d'annonces et de contenu dans votre application.
Ce guide explique comment lire un flux de diffusion de séries d'annonces avec insertion dynamique d'annonces à l'aide du SDK IMA DAI avec un lecteur vidéo pour la lecture de flux en direct et VOD. Pour afficher ou suivre un exemple d'intégration terminé, téléchargez l'exemple de diffusion de pods.
Présentation de l'insertion dynamique de séries d'annonces IMA DAI
StreamRequest
: objet qui définit une demande de flux aux serveurs publicitaires de Google. Doit être créé à l'aide deImaSdkFactory.createPodStreamRequest()
ouImaSdkFactory.createPodVodStreamRequest()
pour activer le service de pods. Ces méthodes nécessitent un code réseau, etcreatePodStreamRequest
nécessite également une clé d'élément personnalisé et une clé API facultative. Les deux incluent d'autres paramètres facultatifs.StreamManager
: objet qui gère la communication entre le flux vidéo et le SDK IMA DAI, par exemple en déclenchant des pings de suivi et en transmettant les événements de flux à l'éditeur.
Prérequis
Une application Android déjà configurée avec le SDK IMA DAI pour lire des flux vidéo avec des annonces DAI. Si vous n'avez pas encore d'application de ce type, nous vous recommandons d'utiliser Android DAI BasicExample comme point de départ. BasicExample contient la base de code référencée dans ce guide.
Pour que IMA DAI fonctionne, il est important que votre application envoie des événements ID3 à l'aide de
VideoStreamPlayerCallback.onUserTextReceived()
. Consultez cet exemple d'extrait de code DAI Full Service.
Configurer vos variables d'insertion de séries d'annonces
Toutes les modifications nécessaires à la diffusion de séries d'annonces sont effectuées dans SampleAdsWrapper.java. La première étape consiste à mettre à jour les variables constantes.
Voici les constantes de demande de flux de bloc d'annonces à ajouter :
STREAM_URL
: uniquement utilisé pour les diffusions en direct. URL du flux vidéo fournie par votre outil de manipulation de fichier manifeste ou votre partenaire tiers utilisant la diffusion de séries d'annonces. Il devrait vous demander d'insérer l'ID de flux fourni par le SDK IMA DAI avant d'envoyer une demande. Dans ce cas, l'URL du flux inclut un espace réservé,"[[STREAMID]]"
, qui est remplacé par l'ID du flux avant d'envoyer une requête.NETWORK_CODE
: code de réseau de votre compte Ad Manager 360.CUSTOM_ASSET_KEY
: utilisé uniquement pour les diffusions en direct. Clé de composant personnalisée qui identifie votre événement de diffusion de pods dans Ad Manager 360. Il peut être créé par votre outil de manipulation du fichier manifeste ou par un partenaire tiers d'insertion de séries d'annonces.API_KEY
: utilisé uniquement pour les diffusions en direct : clé API facultative qui peut être requise pour récupérer un ID de flux à partir du SDK IMA DAI.
L'exemple Android DAI BasicExample est conçu pour lire différents types de flux, mais pour la diffusion de séries d'annonces, il est configuré pour ne lire qu'un seul flux. Modifiez la section des variables de l'exemple pour qu'elle corresponde à ce qui suit :
Créez une demande de flux de série en direct ou VOD pour activer la diffusion de séries.
Diffusion de pods de flux en direct
Supprimez la méthode buildStreamRequest()
qui avait été utilisée pour passer d'un type de flux à un autre. Modifiez ensuite requestAndPlayAds()
pour appeler ImaSdkFactory.createPodStreamRequest()
afin de créer une demande d'annonce Live Pod Serving.
Diffusion de séries d'annonces dans un flux VOD
Supprimez la méthode buildStreamRequest()
qui avait été utilisée pour passer d'un type de flux à un autre. Modifiez ensuite requestAndPlayAds()
pour appeler ImaSdkFactory.createPodVodStreamRequest()
afin de créer une demande d'annonce VOD Pod Serving.
Après avoir créé l'instance de requête de flux, demandez le flux à l'aide de AdsLoader.requestStream()
:
Modifier et définir l'URL du flux
Diffusion de pods de flux en direct
Appelez la méthode StreamManager.getStreamId()
pour obtenir l'ID du flux. Cette valeur doit être insérée dans STEAM_URL
en remplacement de "[[STREAMID]]"
. Une fois cette modification effectuée, définissez la nouvelle URL du flux à l'aide de la méthode videoPlayer.setStreamUrl()
et appelez la méthode videoPlayer.play()
pour démarrer la lecture du flux.
Diffusion de séries d'annonces dans un flux VOD
- Appelez la méthode
StreamManager.getStreamId()
pour obtenir l'ID du flux. - Demandez une URL de flux à votre partenaire technologique vidéo (PTV).
- Une fois que vous avez reçu l'URL de votre fournisseur de validation tiers, appelez la méthode
StreamManager.loadThirdPartyStream()
avec l'URL pour charger le flux, ainsi que les éventuels sous-titres renvoyés par votre fournisseur de validation tiers.
Pour les demandes de diffusion de séries de pods VOD, IMA appelle le rappel VideoStreamPlayer.loadUrl()
lorsque le flux est chargé. Pour démarrer la lecture du flux, ajoutez les appels videoPlayer.setStreamUrl()
et videoPlayer.play()
au rappel VideoStreamPlayer.loadUrl()
:
Nettoyer les composants IMA DAI
Lorsque vous avez terminé de demander et d'afficher des annonces dans un flux Pod Serving avec le SDK IMA DAI, nous vous suggérons de nettoyer toutes les ressources une fois la session Pod Serving terminée. Appelez StreamManager.destroy()
pour arrêter la lecture du flux, arrêter tout suivi des annonces et libérer tous les éléments de flux chargés.
Pour voir d'autres exemples d'utilisation du SDK Android, consultez les exemples sur GitHub.