Combiner les demandes d'annonces natives avec affichage personnalisé et de bannières

Il vous suffit de modifier votre code pour combiner des annonces natives et des bannières dans vos demandes d'annonces.

Prérequis

  • Version 11.0.0 ou ultérieure du SDK Google Mobile Ads.
  • Suivez les instructions de la section Premiers pas.

Chargement de l'annonce...

Les annonces natives utilisant l'affichage personnalisé sont chargées à l'aide de la classe AdLoader, qui possède sa propre classe AdLoader.Builder pour la personnaliser lors de la création. En ajoutant des écouteurs au AdLoader lors de sa création, une application spécifie les types de formats d'annonces qu'elle est prête à recevoir. Le AdLoader ne demande ensuite que ces types.

L'objet AdLoader peut également être configuré pour envoyer des demandes d'annonces susceptibles de générer une bannière ou une annonce native. L'ajout d'un OnAdManagerAdViewLoadedListener à la AdLoader lors de sa création spécifie que les bannières doivent être en concurrence avec les annonces natives pour répondre à la demande.

Le code suivant montre comment créer un AdLoader capable de charger une annonce native ou une bannière dans une seule requête:

Java

AdLoader adLoader = new AdLoader.Builder(context, "/6499/example/nativeandbanner")
    .forNativeAd(new NativeAd.OnNativeAdLoadedListener() {
      @Override
      public void onNativeAdLoaded(NativeAd nativeAd) {
        // Show the ad.
      }
    })
    .forAdManagerAdView(new OnAdManagerAdViewLoadedListener() {
      @Override
      public void onAdManagerAdViewLoaded(AdManagerAdView adView) {
        // Show the banner ad.
      }
    }, AdSize.BANNER, AdSize.MEDIUM_RECTANGLE)
    .withAdListener(new AdListener() {
      @Override
      public void onAdFailedToLoad(LoadAdError error) {
        // Handle the failure by logging, altering the UI, and so on.
      }
    })
    .withAdManagerAdViewOptions(new AdManagerAdViewOptions.Builder()
      // Methods in the AdManagerAdViewOptions.Builder class can be
      // used here to specify individual options settings.
      .build())
    .build();

Kotlin

val adLoader = AdLoader.Builder(this, "/6499/example/nativeandbanner")
    .forNativeAd { nativeAd ->
      // Show the ad.
    }
    .forAdManagerAdView({ adView ->
      // Show the banner ad.
    }, AdSize.BANNER, AdSize.MEDIUM_RECTANGLE)
    .withAdListener(object: AdListener() {
      override fun onAdFailedToLoad(adError: LoadAdError) {
        // Handle the failure by logging, altering the UI, and so on.
      }
    })
    .withAdManagerAdViewOptions(AdManagerAdViewOptions.Builder()
      // Methods in the AdManagerAdViewOptions.Builder class can be
      // used here to specify individual options settings.
      .build())
    .build()

La méthode forAdManagerAdView() ci-dessus prépare AdLoader à recevoir des bannières. Lorsque vous appelez forAdManagerAdView(), vous devez spécifier une liste de tailles d'annonces valides d'une longueur variable avec OnAdManagerAdViewLoadedListener.

Pour effectuer une demande d'annonce valide, vous devez spécifier au moins une taille d'annonce valide. Lorsqu'une bannière a bien été chargée, la méthode onAdManagerAdViewLoaded() de l'objet écouteur spécifié est appelée.

Définir AdViewOptions

La dernière fonction incluse dans la création de l'élément AdLoader ci-dessus est une autre méthode facultative, withAdManagerAdViewOptions():

Java

.withAdManagerAdViewOptions(new AdManagerAdViewOptions.Builder()
    // Methods in the AdManagerAdViewOptions.Builder class can be
    // used here to specify individual banner options settings.
    .build()

Kotlin

.withAdManagerAdViewOptions(AdManagerAdViewOptions.Builder()
    // Methods in the AdManagerAdViewOptions.Builder class can be
    // used here to specify individual banner options settings.
    .build()

L'objet AdManagerAdViewOptions permet aux éditeurs de définir des options spécifiques pour les bannières chargées par AdLoader, telles que:

setManualImpressionsEnabled()
Active la création manuelle de rapports sur les impressions pour les réservations Google Ad Manager. Les applications qui utilisent les impressions manuelles peuvent déterminer elles-mêmes quand une impression doit être enregistrée. Pour ce faire, appelez AdManagerAdView.recordManualImpression().