Options des annonces natives

Elles offrent de nombreuses fonctionnalités avancées personnalisations et offrir 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ées

Les contrôles de format vous permettent de spécifier une préférence pour le format dans vos créations publicitaires.

Appeler NativeAdOptions.Builder.setMediaAspectRatio() avec un NativeAdOptions.MediaAspectRatio .

  • Si cette règle n'est pas configurée, l'annonce renvoyée peut présenter n'importe quel format multimédia.

  • Si ce paramètre est défini, vous pouvez améliorer l'expérience utilisateur en spécifiant la le type de format souhaité.

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

NativeAdOptions nativeAdOptions = new NativeAdOptions.Builder()
                              .setMediaAspectRatio(NativeAdOptions.NATIVE_MEDIA_ASPECT_RATIO_LANDSCAPE)
                              .build();

AdLoader loader = new AdLoader.Builder(this, 'ca-app-pub-3940256099942544/2247696110')
                              .withNativeAdOptions(nativeAdOptions)
                              .build();

Contrôle de téléchargement d'images

Le contrôle de téléchargement d'images vous permet de décider si les composants Image ou uniquement les URI renvoyées par le SDK.

Appeler NativeAdOptions.Builder.setReturnUrlsForImageAssets() avec une valeur boolean.
  • La commande de téléchargement d'images est désactivée par défaut.

  • Lorsqu'il est désactivé, le SDK Google Mobile Ads insère à la fois l'image et l'URI.

  • Lorsque cette option est activée, le SDK ne remplit que l'URI, ce qui vous permet de télécharger les images à votre discrétion.

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

NativeAdOptions nativeAdOptions = new NativeAdOptions.Builder()
                                                     .setReturnUrlsForImageAssets(true)
                                                     .build();

AdLoader loader = new AdLoader.Builder(this, 'ca-app-pub-3940256099942544/2247696110')
                              .withNativeAdOptions(nativeAdOptions)
                              .forNativeAd(nativeAd -> {
                                List<Uri> imageUris = new ArrayList<>();
                                for (Image image : nativeAd.getImages()) {
                                  imageUris.add(image.getUri());
                                }
                              })
                              .build();

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 une seule d'entre elles.

Appelez NativeAdOptions.Builder.setRequestMultipleImages() avec une valeur boolean.
  • Les commandes de charge utile de l'image sont désactivées par défaut.

  • Lorsque cette option est désactivée, votre application demande au SDK de fournir uniquement première image de tout élément contenant 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 indique au SDK de renvoyer plusieurs composants Image.

NativeAdOptions nativeAdOptions = new NativeAdOptions.Builder()
                                                     .setRequestMultipleImages(true)
                                                     .build();

AdLoader loader = new AdLoader.Builder(this, 'ca-app-pub-3940256099942544/2247696110')
                              .withNativeAdOptions(nativeAdOptions)
                              .build();

Emplacements Choisir sa pub

Commandes de position de Choisir sa pub

Les commandes de position "Choisir sa pub" vous permettent de choisir l'angle à afficher Icône Choisir sa pub.

Appelez NativeAdOptions.Builder.setAdChoicesPlacement() avec une valeur NativeAdOption.AdChoicesPlacement.

  • Si cette règle n'est pas configurée, l'icône Choisir sa pub est positionnée en haut à droite.

  • S'il est défini, "Choisir sa pub" est placé à la position personnalisée demandée.

L'exemple suivant montre comment définir une position d'image AdChoices personnalisée.

NativeAdOptions nativeAdOptions = new NativeAdOptions.Builder()
                                                     .setAdChoicesPlacement(NativeAdOptions.ADCHOICES_BOTTOM_RIGHT)
                                                     .build();

AdLoader loader = new AdLoader.Builder(this, 'ca-app-pub-3940256099942544/2247696110')
                              .withNativeAdOptions(nativeAdOptions)
                              .build();

Vue personnalisée "Choisir sa pub"

La vue personnalisée "Choisir sa pub" vous permet de positionner l'icône "Choisir sa pub" dans un emplacement personnalisé. Cela diffère des commandes de position AdChoices, qui ne permettent de spécifier qu'un seul des quatre coins.

Appeler NativeAdView.setAdChoicesView() avec un AdChoicesView .

L'exemple suivant montre comment définir une vue AdChoices personnalisée, avec l'icône AdChoices affichée dans AdChoicesView.


public void onNativeAdLoaded(NativeAd ad) {
    NativeAdView nativeAdView = new NativeAdView(getApplicationContext());
    AdChoicesView adChoicesView = new AdChoicesView(this);
    nativeAdView.setAdChoicesView(adChoicesView);
}

Commandes vidéo

Activer le mode silencieux

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.

Appeler VideoOptions.Builder.setStartMuted() avec une valeur boolean.
  • Le son est activé par défaut au démarrage.

  • 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 avec le son coupé.

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

VideoOptions videoOptions = new VideoOptions.Builder()
                                            .setStartMuted(false)
                                            .build();

NativeAdOptions adOptions = new NativeAdOptions.Builder()
                                               .setVideoOptions(videoOptions)
                                               .build();

AdLoader loader = new AdLoader.Builder(this, 'ca-app-pub-3940256099942544/2247696110')
                              .withNativeAdOptions(adOptions).build();

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 vidéo.

Appeler VideoOptions.Builder.setCustomControlsRequested() avec une valeur boolean.
  • 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 affichées par le SDK.

  • Si l'annonce comporte du contenu vidéo et que les commandes personnalisées sont activées, vous devez vous pouvez afficher vos commandes personnalisées avec l'annonce, celle-ci n'étant pas diffusée se contrôle lui-même. Les commandes peuvent ensuite appeler les méthodes appropriées sur VideoController.

L'exemple suivant montre comment demander une vidéo avec des commandes de lecture personnalisées.

VideoOptions videoOptions = new VideoOptions.Builder()
                                            .setCustomControlsRequested(true)
                                            .build();

NativeAdOptions adOptions = new NativeAdOptions.Builder()
                                               .setVideoOptions(videoOptions)
                                               .build();

AdLoader loader = new AdLoader.Builder(this, 'ca-app-pub-3940256099942544/2247696110')
                              .withNativeAdOptions(adOptions).build();

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

Parce qu'au moment de la demande, on ne sait pas si l'annonce affichée autorisera des commandes vidéo personnalisées, vous devez vérifier si elles sont activées.

Java

@Override
public void onNativeAdLoaded(NativeAd nativeAd) {
  MediaContent mediaContent = nativeAd.getMediaContent();
  if (mediaContent != null) {
    VideoController videoController = mediaContent.getVideoController();
    boolean canShowCustomControls = videoController.isCustomControlsEnabled();
  }
}

Kotlin

NativeAd.OnNativeAdLoadedListener { ad ->
  val mediaContent = ad.mediaContent
  if (mediaContent != null) {
    val videoController = mediaContent.videoController
    val canShowCustomControls = videoController.isCustomControlsEnabled
  }
}

Gestes de clic personnalisés

Les gestes de clic personnalisés sont une fonctionnalité des annonces natives qui permet de balayer l'écran être enregistrés en tant que clics sur les annonces. Il est conçu pour fonctionner avec les applications qui utilisent le balayage des gestes pour la navigation dans le contenu. Ce guide explique comment activer les clics personnalisés sur vos annonces natives.

Appeler NativeAdOptions.Builder.enableCustomClickGestureDirection() avec un NativeAdOptions.SwipeGestureDirection et boolean pour indiquer si vous souhaitez que les actions sans contact soient 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, votre application est compatible avec les comportements de clics normaux.

  • Lorsque cette option est activée, votre application prend en charge les gestes de balayage personnalisés.

L'exemple suivant implémente un geste de balayage personnalisé vers la droite et préserve le comportement normal des onglets.

NativeAdOptions adOptions = new NativeAdOptions
    .Builder()
    .enableCustomClickGestureDirection(NativeAdOptions.SWIPE_GESTURE_DIRECTION_RIGHT,
            /* tapsAllowed= */ true)
    .build();

// The following sample ad unit ID has been enabled for custom click gestures
// and can be used for testing.
AdLoader.Builder builder = new AdLoader
    .Builder(this, 'ca-app-pub-3940256099942544/2247696110')
    .withNativeAdOptions(adOptions);

Écouter les événements liés aux gestes de balayage

Lorsqu'un geste de balayage est enregistré, le SDK Google Mobile Ads appelle la onAdSwipeGestureClicked() sur AdListener, en plus de la méthode existante onAdClicked().

AdLoader adLoader = builder
    .withAdListener(
      new AdListener() {
        // Called when a swipe gesture click is recorded.
        @Override
        public void onAdSwipeGestureClicked() {
          Log.d(TAG, "A swipe gesture click has occurred.")
        }

        // Called when a swipe gesture click or a tap click is recorded, as
        // configured in NativeAdOptions.
        @Override
        public void onAdClicked() {
          Log.d(TAG, "A swipe gesture click or a tap click has occurred.")
        }
      })
    .build();

Médiation

Les gestes de clic personnalisés ne fonctionnent que sur les annonces natives que Google Mobile Rendus du SDK Ads. Sources d'annonces nécessitent des SDK tiers pour ne répondent pas au paramètre d'itinéraire personnalisé par clic.