Définir des fonctionnalités natives avancées

Sélectionnez une plate-forme : Android iOS Android (ancienne version)

Les annonces natives disposent de nombreuses fonctionnalités avancées qui vous permettent d'effectuer des personnalisations supplémentaires et d'offrir la meilleure expérience publicitaire possible. Ce guide vous explique comment utiliser les fonctionnalités avancées des annonces natives.

Prérequis

Options des assets

Cette section explique comment personnaliser les assets de création de vos annonces natives. Vous pouvez spécifier un format préféré pour les composants multimédias, ainsi que la façon dont les composants Image sont téléchargés et affichés.

Commandes de format de média préféré

Les commandes de format de média vous permettent de spécifier une préférence pour le format des créations publicitaires.

Définissez GADNativeAdMediaAdLoaderOptions mediaAspectRatio avec une GADMediaAspectRatio.

  • Si ce paramètre n'est pas défini, l'annonce renvoyée peut avoir n'importe quel format multimédia.

  • Lorsqu'il est défini, vous pouvez améliorer l'expérience utilisateur en spécifiant le type de format préféré.

L'exemple suivant indique au SDK de privilégier une image ou une vidéo de retour avec un format spécifique.

Swift

let nativeOptions = NativeAdMediaAdLoaderOptions()
nativeOptions.mediaAspectRatio = .any

adLoader = AdLoader(
  adUnitID: "nativeAdUnitID",
  rootViewController: self,
  adTypes: [.native],
  options: [nativeOptions])

Objective-C

GADNativeAdMediaAdLoaderOptions *nativeOptions = [[GADNativeAdMediaAdLoaderOptions alloc] init];
nativeOptions.mediaAspectRatio = GADMediaAspectRatioAny;

self.adLoader = [[GADAdLoader alloc] initWithAdUnitID:"nativeAdUnitID"
                                   rootViewController:self
                                              adTypes:@[ GADAdLoaderAdTypeNative ]
                                              options:@[ nativeOptions ]];

Remplacez nativeAdUnitID par l'ID de votre bloc d'annonces.

Contrôle du téléchargement des images

Le contrôle du téléchargement des images vous permet de décider si le SDK doit renvoyer des composants Image ou uniquement des URI.

Définissez GADNativeAdImageAdLoaderOptions disableImageLoading avec une valeur BOOL.

  • Le contrôle du téléchargement d'images est désactivé par défaut.

  • Lorsque cette option est désactivée, Google Mobile Ads SDK renseigne l'image et l'URI pour vous.

  • Lorsqu'elle est activée, le SDK n'indique que l'URI, ce qui vous permet de télécharger les images réelles à votre discrétion.

L'exemple suivant indique au SDK de ne renvoyer que l'URI.

Swift

let nativeOptions = NativeAdImageAdLoaderOptions()
nativeOptions.isImageLoadingDisabled = true

adLoader = AdLoader(
  adUnitID: "nativeAdUnitID",
  rootViewController: self,
  adTypes: [.native],
  options: [nativeOptions])

Objective-C

GADNativeAdImageAdLoaderOptions *nativeOptions = [[GADNativeAdImageAdLoaderOptions alloc] init];
nativeOptions.disableImageLoading = YES;

self.adLoader = [[GADAdLoader alloc] initWithAdUnitID:"nativeAdUnitID"
                                   rootViewController:self
                                              adTypes:@[ GADAdLoaderAdTypeNative ]
                                              options:@[ nativeOptions ]];

Contrôles 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 une seule.

  • Les contrôles de la charge utile de l'image sont désactivés par défaut.

  • Lorsqu'elle est désactivée, votre application indique au SDK de ne fournir que la première image pour tous les composants contenant une série.

  • Lorsque cette option est activée, votre application indique qu'elle est prête à afficher toutes les images des assets qui en comportent plusieurs.

L'exemple suivant indique au SDK de renvoyer plusieurs composants Image.

Swift

let nativeOptions = NativeAdImageAdLoaderOptions()
nativeOptions.shouldRequestMultipleImages = true

adLoader = AdLoader(
  adUnitID: "nativeAdUnitID",
  rootViewController: self,
  adTypes: [.native],
  options: [nativeOptions])

Objective-C

GADNativeAdImageAdLoaderOptions *nativeOptions = [[GADNativeAdImageAdLoaderOptions alloc] init];
nativeOptions.shouldRequestMultipleImages = YES;

self.adLoader = [[GADAdLoader alloc] initWithAdUnitID:"nativeAdUnitID"
                                   rootViewController:self
                                              adTypes:@[ GADAdLoaderAdTypeNative ]
                                              options:@[ nativeOptions ]];

Emplacements de Choisir sa pub

Cette section explique comment positionner la superposition Choisir sa pub. Vous pouvez définir son emplacement dans l'un des quatre coins ou l'afficher dans une vue personnalisée.

Contrôles de la position de l'icône Choisir sa pub

Les commandes de position de l'icône AdChoices vous permettent de choisir l'angle dans lequel l'afficher.

Définissez GADNativeAdViewAdOptions preferredAdChoicesPosition avec une valeur GADAdChoicesPosition.

  • Si elle n'est pas définie, l'icône Choisir sa pub est placée en haut à droite.

  • Si cette option est définie, Choisir sa pub est placé à la position personnalisée demandée.

L'exemple suivant montre comment définir une position personnalisée pour l'image Choisir sa pub.

Swift

let nativeOptions = NativeAdViewAdOptions()
nativeOptions.preferredAdChoicesPosition = .topRightCorner

adLoader = AdLoader(
  adUnitID: "nativeAdUnitID",
  rootViewController: self,
  adTypes: [.native],
  options: [nativeOptions])

Objective-C

GADNativeAdViewAdOptions *nativeOptions = [[GADNativeAdViewAdOptions alloc] init];
nativeOptions.preferredAdChoicesPosition = GADAdChoicesPositionTopRightCorner;

self.adLoader = [[GADAdLoader alloc] initWithAdUnitID:"nativeAdUnitID"
                                   rootViewController:self
                                              adTypes:@[ GADAdLoaderAdTypeNative ]
                                              options:@[ nativeOptions ]];

Vue personnalisée de Choisir sa pub

La fonctionnalité de vue personnalisée Choisir sa pub vous permet de positionner l'icône Choisir sa pub à un emplacement personnalisé. Cette option est différente des commandes de positionnement d'AdChoices, qui ne permettent de spécifier qu'un des quatre angles.

Définissez la propriété GADNativeAd.adChoicesView avec un GADAdChoicesView avant l'affichage, et le contenu Choisir sa pub s'affichera dans le GADAdChoicesView.

L'exemple suivant montre comment définir une vue Choisir sa pub personnalisée. L'icône Choisir sa pub s'affiche dans GADAdChoicesView :

Swift

private func createAdChoicesView(nativeAdView: NativeAdView) {
  // Define a custom position for the AdChoices icon.
  let customRect = CGRect(x: 100, y: 100, width: 15, height: 15)
  let customAdChoicesView = AdChoicesView(frame: customRect)
  nativeAdView.addSubview(customAdChoicesView)
  nativeAdView.adChoicesView = customAdChoicesView
}

Objective-C

- (void)createAdChoicesViewWithNativeAdView:(GADNativeAdView *)nativeAdView {
  // Define a custom position for the AdChoices icon.
  CGRect customRect = CGRectMake(100, 100, 15, 15);
  GADAdChoicesView *customAdChoicesView = [[GADAdChoicesView alloc] initWithFrame:customRect];
  [nativeAdView addSubview:customAdChoicesView];
  nativeAdView.adChoicesView = customAdChoicesView;
}

Commandes vidéo

Cette section explique comment personnaliser l'expérience de lecture des annonces vidéo. Vous pouvez définir l'état initial de coupure du son et implémenter des commandes de lecture personnalisées.

Démarrer le comportement de coupure du son

Le comportement "Démarrer sans le son" vous permet de désactiver ou d'activer le son d'une vidéo au démarrage.

Définissez GADVideoOptions startMuted avec une valeur BOOL.

  • Le comportement de démarrage en mode silencieux est activé par défaut.

  • Lorsqu'elle est désactivée, votre application demande que la vidéo commence avec le son.

  • Lorsque cette option est activée, votre application demande que la vidéo commence sans le son.

L'exemple suivant montre comment lancer la vidéo avec le son activé.

Swift

let videoOptions = VideoOptions()
videoOptions.shouldStartMuted = false

adLoader = AdLoader(
  adUnitID: "nativeAdUnitID",
  rootViewController: self,
  adTypes: [.native],
  options: [videoOptions])

Objective-C

GADVideoOptions *videoOptions = [[GADVideoOptions alloc] init];
videoOptions.startMuted = NO;

self.adLoader = [[GADAdLoader alloc] initWithAdUnitID:"nativeAdUnitID"
                                   rootViewController:self
                                              adTypes:@[ GADAdLoaderAdTypeNative ]
                                              options:@[ videoOptions ]];

Commandes de lecture personnalisées

Cela vous permet de 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.

  • Lorsqu'elle est désactivée, votre vidéo affiche les commandes de saisie affiché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 celle-ci n'en affichera pas 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.

Swift

let videoOptions = VideoOptions()
videoOptions.areCustomControlsRequested = true

adLoader = AdLoader(
  adUnitID: "nativeAdUnitID",
  rootViewController: self,
  adTypes: [.native],
  options: [videoOptions])

Objective-C

GADVideoOptions *videoOptions = [[GADVideoOptions alloc] init];
videoOptions.customControlsRequested = YES;

self.adLoader = [[GADAdLoader alloc] initWithAdUnitID:"nativeAdUnitID"
                                   rootViewController:self
                                              adTypes:@[ GADAdLoaderAdTypeNative ]
                                              options:@[ videoOptions ]];

Vérifier si les commandes personnalisées sont activées

Comme on ne sait pas 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.

Swift

private func checkCustomControlsEnabled(nativeAd: NativeAd) -> Bool {
  let videoController = nativeAd.mediaContent.videoController
  return videoController.areCustomControlsEnabled
}

Objective-C

- (BOOL)checkCustomControlsEnabledWithNativeAd:(GADNativeAd *)nativeAd {
  GADVideoController *videoController = nativeAd.mediaContent.videoController;
  return videoController.customControlsEnabled;
}

Afficher des commandes vidéo personnalisées

Affichez les commandes vidéo personnalisées en suivant ces bonnes pratiques :

  1. Affichez la vue des commandes personnalisées en tant qu'enfant de la vue d'annonce native. Cette approche permet aux calculs de visibilité Open Measurement de considérer les commandes personnalisées comme une obstruction acceptable.
  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 contenir les commandes.

Gestes de clic personnalisés

Les gestes de clic personnalisés sont une fonctionnalité d'annonces natives qui vous permet d'enregistrer les balayages sur les vues d'annonces en tant que clics sur une annonce. Elle fonctionne 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 sélectionnée. Vous devez également indiquer si vous souhaitez autoriser les appuis comme des clics.

  • Les gestes de clic personnalisés sont désactivés par défaut.

  • Lorsque cette option est désactivée, seules les pressions sont comptabilisées comme des clics.

  • Lorsque cette option est activée, les gestes de balayage sont comptabilisés comme des clics, et vous pouvez spécifier si les gestes d'appui sont toujours comptabilisés comme des clics.

L'exemple suivant montre comment implémenter un geste de balayage personnalisé vers la droite et préserver le comportement normal d'appui.

Swift

let swipeGestureOptions = NativeAdCustomClickGestureOptions(
  swipeGestureDirection: .right,
  tapsAllowed: true)

adLoader = AdLoader(
  adUnitID: "nativeAdUnitID",
  rootViewController: self,
  adTypes: [.native],
  options: [swipeGestureOptions])

Objective-C

GADNativeAdCustomClickGestureOptions *swipeGestureOptions =
    [[GADNativeAdCustomClickGestureOptions alloc]
        initWithSwipeGestureDirection:UISwipeGestureRecognizerDirectionRight
                          tapsAllowed:YES];

self.adLoader = [[GADAdLoader alloc] initWithAdUnitID:"nativeAdUnitID"
                                   rootViewController:self
                                              adTypes:@[ GADAdLoaderAdTypeNative ]
                                              options:@[ swipeGestureOptions ]];

Écouter les événements de balayage

Lorsqu'un clic par balayage est enregistré, Google Mobile Ads SDK appelle la méthode déléguée nativeAdDidRecordSwipeGestureClick: sur GADNativeAdDelegate, en plus de la méthode déléguée nativeAdDidRecordClick: existante.

Swift

// Called when a swipe gesture click is recorded, as configured in
// NativeAdCustomClickGestureOptions.
func nativeAdDidRecordSwipeGestureClick(_ nativeAd: NativeAd) {
  print("A swipe gesture click has occurred.")
}

// Called when a swipe gesture click or a tap click is recorded.
func nativeAdDidRecordClick(_ nativeAd: NativeAd) {
  print("A swipe gesture click or tap click has occurred.")
}

Objective-C

// Called when a swipe gesture click is recorded, as configured in
// GADNativeAdCustomClickGestureOptions.
- (void)nativeAdDidRecordSwipeGestureClick:(GADNativeAd *)nativeAd {
  NSLog(@"A swipe gesture click has occurred.");
}

// Called when a swipe gesture click or a tap click is recorded.
- (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 de direction de clic personnalisé.