Combiner les demandes d'annonces natives et de bannières

En apportant quelques modifications à votre code, vous pouvez combiner des annonces natives et des bannières dans vos demandes d'annonces.

Prérequis

  • SDK Google Mobile Ads 11.0.0 ou version ultérieure.

Charger une annonce

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

L'objet AdLoader peut également être configuré pour effectuer des demandes d'annonces qui peuvent générer une bannière ou une annonce native. L'ajout d'un OnAdManagerAdViewLoadedListener à 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 qui peut charger une annonce native ou une bannière dans une seule demande :

Java

AdLoader adLoader = new AdLoader.Builder(context, "/21775744923/example/native-and-banner")
    .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, etc.
      }
    })
    .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, "/21775744923/example/native-and-banner")
    .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, etc.
      }
    })
    .withAdManagerAdViewOptions(AdManagerAdViewOptions.Builder()
      // Methods in the AdManagerAdViewOptions.Builder class can be
      // used here to specify individual options settings.
      .build())
    .build()

La méthode forAdManagerAdView() prépare AdLoader à recevoir des bannières. Une liste de tailles d'annonces valides de longueur variable doit être spécifiée avec un OnAdManagerAdViewLoadedListener lors de l'appel de forAdManagerAdView().

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

Définissez une taille d'annonce inférieure ou égale à la taille de l'écran de l'appareil. Pour déterminer la taille maximale de l'écran, utilisez la Resources.getDisplayMetrics méthode. Les dimensions de l'objet AdSize utilisent des pixels indépendants de la densité (dp). Lors de la comparaison, convertissez la taille de l'écran de pixels en dp. Pour en savoir plus sur les contraintes de taille, consultez Résoudre les problèmes d'impressions non diffusées dans Ad Manager.

Définir l'objet AdViewOptions

La dernière fonction incluse dans la création de AdLoader 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, en appelant AdManagerAdView.recordManualImpression().