Options d'annonces natives

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

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éfinissez GADNativeAdImageAdLoaderOptions 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éfinissez GADNativeAdImageAdLoaderOptions 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éfinissez GADVideoOptions 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éfinissez GADVideoOptions 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.

  • 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:

  1. 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.
  2. É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.