Les annonces natives disposent de nombreuses fonctionnalités avancées qui vous permettent de personnaliser davantage vos annonces et de proposer la meilleure expérience publicitaire possible. Ce guide vous explique comment utiliser les fonctionnalités avancées des annonces natives.
Prérequis
- Intégrez le format d'annonce native.
Commandes des composants
Commandes de format multimédia préféré
Les commandes de format multimédia vous permettent de spécifier une préférence pour le format des créations publicitaires.
Définissez GADNativeAdMediaAdLoaderOptions mediaAspectRatio
avec un GADMediaAspectRatio
.
Si cette valeur n'est pas définie, l'annonce renvoyée peut avoir n'importe quel format multimédia.
Une fois défini, vous pourrez améliorer l'expérience utilisateur en spécifiant le type de format préféré.
L'exemple suivant indique au SDK de préférer une image ou une vidéo renvoyée avec un format spécifique.
GADNativeAdMediaAdLoaderOptions *nativeOption = [[GADNativeAdMediaAdLoaderOptions alloc] init];
nativeOption.mediaAspectRatio = GADMediaAspectRatioAny;
GADAdLoader* adLoader = [[GADAdLoader alloc] initWithAdUnitID:@"ca-app-pub-3940256099942544/3986624511"
rootViewController:self
adTypes:@[ GADAdLoaderAdTypeNative ]
options:@[ nativeOption ]];
Contrôle du téléchargement d'images
Le contrôle du téléchargement d'images vous permet de décider si les éléments image ou uniquement les URI sont renvoyés par le SDK.
DéfinissezGADNativeAdImageAdLoaderOptions disableImageLoading
avec une valeur BOOL
.
Le contrôle du téléchargement d'images est désactivé par défaut.
Lorsqu'il est désactivé, le SDK Google Mobile Ads renseigne à la fois l'image et l'URI.
Lorsqu'il est activé, le SDK ne renseigne que l'URI, ce qui vous permet de télécharger les images réelles à votre guise.
L'exemple suivant indique au SDK de ne renvoyer que l'URI.
GADNativeAdImageAdLoaderOptions *nativeOption = [[GADNativeAdImageAdLoaderOptions alloc] init];
nativeOption.disableImageLoading = YES;
GADAdLoader* adLoader = [[GADAdLoader alloc] initWithAdUnitID:@"ca-app-pub-3940256099942544/3986624511"
rootViewController:self
adTypes:@[ GADAdLoaderAdTypeNative ]
options:@[ nativeOption ]];
Commandes de la charge utile de l'image
Certaines annonces comportent une série d'images plutôt qu'une seule. Utilisez cette fonctionnalité pour indiquer si votre application est prête à afficher toutes les images ou seulement une.
DéfinissezGADNativeAdImageAdLoaderOptions shouldRequestMultipleImages
avec une valeur BOOL
.
Les commandes de la charge utile d'image sont désactivées par défaut.
Lorsqu'il est désactivé, votre application demande au SDK de ne fournir que la première image pour tous les composants qui contiennent une série.
Lorsque ce paramètre est activé, votre application indique qu'elle est prête à afficher toutes les images de tous les composants qui en comportent plusieurs.
L'exemple suivant demande au SDK de renvoyer plusieurs composants Image.
GADNativeAdImageAdLoaderOptions *nativeOption = [[GADNativeAdImageAdLoaderOptions alloc] init];
nativeOption.shouldRequestMultipleImages = YES;
GADAdLoader* adLoader = [[GADAdLoader alloc] initWithAdUnitID:@"ca-app-pub-3940256099942544/3986624511"
rootViewController:self
adTypes:@[ GADAdLoaderAdTypeNative ]
options:@[ nativeOption ]];
Emplacements de Choisir sa pub
Contrôles de la position de la bannière "Choisir sa pub"
Les commandes de position de l'icône Choisir sa pub vous permettent de choisir dans quel coin afficher l'icône Choisir sa pub.
Définissez GADNativeAdViewAdOptions preferredAdChoicesPosition
avec une valeur GADAdChoicesPosition
.
Si ce paramètre n'est pas défini, l'icône Choisir sa pub est placée en haut à droite.
Si ce paramètre est défini, AdChoices est placé à la position personnalisée demandée.
L'exemple suivant montre comment définir une position d'image AdChoices personnalisée.
GADNativeAdViewAdOptions *nativeOptions = [[GADNativeAdViewAdOptions alloc] init];
nativeOptions.preferredAdChoicesPosition = GADAdChoicesPositionTopLeftCorner;
GADAdLoader* adLoader = [[GADAdLoader alloc] initWithAdUnitID:@"ca-app-pub-3940256099942544/3986624511"
rootViewController:self
adTypes:@[ GADAdLoaderAdTypeNative ]
options:@[ nativeOptions ]];
Vue personnalisée "Choisir sa pub"
La fonctionnalité de vue personnalisée AdChoices vous permet de positionner l'icône AdChoices à un emplacement personnalisé. Cela diffère des commandes de position AdChoices, qui ne permettent de spécifier qu'un seul des quatre coins.
Définissez la propriété GADNativeAd.adChoicesView
avec un GADAdChoicesView
avant l'affichage. Le contenu AdChoices s'affichera dans le GADAdChoicesView
.
L'exemple suivant montre comment définir une vue AdChoices personnalisée. L'icône Choisir sa pub s'affichera dans GADAdChoicesView
.
Objective-C
- (void)adLoader:(GADAdLoader *)adLoader didReceiveNativeAd:(GADNativeAd *)nativeAd {
...
GADAdChoicesView *customAdChoicesView =
[[GADAdChoicesView alloc] initWithFrame: CGRectMake(..., ..., ..., ...)];
[nativeAdView addSubview:customAdChoicesView];
nativeAdView.adChoicesView = customAdChoicesView;
// Associate the native ad view with the native ad object. This is
// required to make the ad clickable.
// Note: this should always be done after populating the ad views.
nativeAdView.nativeAd = nativeAd;
}
Swift
func adLoader(_ adLoader: GADAdLoader, didReceive nativeAd: GADNativeAd) {
refreshAdButton.isEnabled = true
...
// Define a custom position for the AdChoices icon.
let customRect = CGRect(x: 100, y: 100, width: 15, height: 15)
let customAdChoicesView = GADAdChoicesView(frame: customRect)
nativeAdView.addSubview(customAdChoicesView)
nativeAdView.adChoicesView = customAdChoicesView
// Associate the native ad view with the native ad object. This is
// required to make the ad clickable.
// Note: this should always be done after populating the ad views.
nativeAdView.nativeAd = nativeAd;
}
Commandes vidéo
Démarrer le comportement de mise en sourdine
Le comportement de démarrage avec le son désactivé vous permet de désactiver ou d'activer le son de début d'une vidéo.
DéfinissezGADVideoOptions startMuted
avec une valeur BOOL
.
Le comportement de démarrage en mode muet est activé par défaut.
Lorsqu'il est désactivé, votre application demande que la vidéo commence par l'audio.
Lorsque cette option est activée, votre application demande que la vidéo commence sans le son.
L'exemple suivant montre comment démarrer la vidéo avec le son activé.
GADVideoOptions *nativeOptions = [[GADVideoOptions alloc] init];
nativeOptions.startMuted = NO;
GADAdLoader* adLoader = [[GADAdLoader alloc] initWithAdUnitID:@"ca-app-pub-3940256099942544/3986624511"
rootViewController:self
adTypes:@[ GADAdLoaderAdTypeNative ]
options:@[ nativeOptions ]];
Commandes de lecture personnalisées
Vous pouvez ainsi demander des commandes d'entrée vidéo personnalisées pour lire, mettre en pause ou couper le son de la vidéo.
DéfinissezGADVideoOptions customControlsRequested
avec une valeur BOOL
.
Les commandes de lecture personnalisées sont désactivées par défaut.
Lorsque cette option est désactivée, votre vidéo affiche les commandes d'entrée générées par le SDK.
- Une fois cette option activée, vous pouvez utiliser
GADVideoController play
,GADVideoController pause
etGADVideoController setMute
pour contrôler l'annonce vidéo.
- Si l'annonce comporte du contenu vidéo et que les commandes personnalisées sont activées, vous devez afficher vos commandes personnalisées avec l'annonce, car elle n'affichera aucune commande elle-même. Les commandes peuvent ensuite appeler les méthodes appropriées sur
GADVideoController
.
L'exemple suivant montre comment demander une vidéo avec des commandes de lecture personnalisées.
GADVideoOptions *nativeOptions = [[GADVideoOptions alloc] init];
nativeOptions.customControlsRequested = YES;
GADAdLoader* adLoader = [[GADAdLoader alloc] initWithAdUnitID:@"ca-app-pub-3940256099942544/3986624511"
rootViewController:self
adTypes:@[ GADAdLoaderAdTypeNative ]
options:@[ nativeOptions ]];
Vérifier si les commandes personnalisées sont activées
Étant donné qu'il n'est pas possible de savoir au moment de la demande si l'annonce renvoyée autorisera les commandes vidéo personnalisées, vous devez vérifier si les commandes personnalisées sont activées.
Objective-C
- (void)adLoader:(GADAdLoader *)adLoader
didReceiveNativeAd:(GADNativeAd*)nativeAd {
GADVideoController *videoController = nativeAd.mediaContent.videoController;
BOOL canShowCustomControls = videoController.customControlsEnabled;
}
Swift
func adLoader(_ adLoader: GADAdLoader, didReceive nativeAd: GADNativeAd) {
let videoController = nativeAd.mediaContent.videoController
let canShowCustomControls = videoController?.customControlsEnabled() == true
}
Afficher des commandes vidéo personnalisées
Affichez des commandes vidéo personnalisées en suivant les bonnes pratiques suivantes:
- Affichez la vue des commandes personnalisées en tant qu'enfant de la vue de l'annonce native. Cette approche garantit que les calculs de visibilité Open Measurement considèrent les commandes personnalisées comme une obstruction conviviale.
- Évitez d'afficher une superposition invisible sur l'intégralité de la vue multimédia. Les superpositions bloquent les clics sur la vue multimédia, ce qui a un impact négatif sur les performances des annonces natives. Créez plutôt une petite superposition juste assez grande pour accueillir les commandes.
Gestes de clic personnalisés
Les gestes de clic personnalisés sont une fonctionnalité des annonces natives qui permet d'enregistrer les balayages sur les vues d'annonces en tant que clics sur les annonces. Il est conçu pour fonctionner avec les applications qui utilisent des gestes de balayage pour la navigation dans le contenu. Ce guide vous explique comment activer les gestes de clic personnalisés sur vos annonces natives.
Initialisez une instance GADNativeAdCustomClickGestureOptions
avec la direction de balayage que vous avez sélectionnée. Vous devez également indiquer si les pressions doivent être autorisées en tant que clics.
Les gestes de clic personnalisés sont désactivés par défaut.
Lorsque cette option est désactivée, seuls les appuis sont comptabilisés comme clics.
Lorsque cette option est activée, les gestes de balayage sont comptabilisés comme des clics. Vous pouvez également spécifier si les pressions peuvent toujours être comptabilisées comme des clics.
L'exemple suivant montre comment implémenter un geste de balayage personnalisé vers la droite tout en conservant le comportement normal de pression.
GADNativeAdCustomClickGestureOptions *swipeGestureOptions = [[GADNativeAdCustomClickGestureOptions alloc]
initWithSwipeGestureDirection:UISwipeGestureRecognizerDirectionRight
tapsAllowed:YES];
// The following sample ad unit ID has been enabled for custom click gestures
// and can be used for testing.
self.adLoader = [[GADAdLoader alloc]
initWithAdUnitID:@"ca-app-pub-3940256099942544/3986624511"
rootViewController:self
adTypes:@[ GADAdLoaderAdTypeNative ]
options:@[ swipeGestureOptions ]];
Écouter les événements de balayage
Lorsqu'un geste de balayage est enregistré, le SDK Google Mobile Ads appelle la méthode de délégué nativeAdDidRecordSwipeGestureClick:
sur GADNativeAdDelegate
, en plus de la méthode de délégué nativeAdDidRecordClick:
existante.
#pragma mark - GADNativeAdDelegate implementation
// Called when a swipe gesture click is recorded.
- (void)nativeAdDidRecordSwipeGestureClick:(GADNativeAd *)nativeAd {
NSLog(@"A swipe gesture click has occurred.");
}
// Called when a swipe gesture click or a tap click is recorded, as configured in
// GADNativeAdCustomClickGestureOptions.
- (void)nativeAdDidRecordClick:(GADNativeAd *)nativeAd {
NSLog(@"A swipe gesture click or tap click has occurred.");
}
Médiation
Les gestes de clic personnalisés ne fonctionnent que sur les annonces natives affichées par le SDK Google Mobile Ads. Les sources d'annonces qui nécessitent des SDK tiers pour l'affichage ne répondent pas au paramètre d'orientation des clics personnalisés.