Utiliser des bannières adaptatives intégrées pour les bannières défilantes

Sélectionnez une plate-forme : Android iOS Flutter Android (Legacy)

Les bannières adaptatives vous permettent de spécifier la largeur d'une annonce afin de déterminer la taille optimale pour chaque appareil. Contrairement aux bannières adaptatives ancrées, les bannières adaptatives intégrées sont plus grandes, plus larges et n'utilisent pas de hauteur fixe. Les bannières adaptatives intégrées ont une hauteur variable. Ces bannières peuvent occuper tout l'écran ou une hauteur maximale que vous spécifiez.

Ce guide explique comment créer des bannières adaptatives intégrées et définir leur taille.

L'image suivante montre des bannières adaptatives intégrées dans un contenu à faire défiler :

Diagramme montrant les différences entre les bannières adaptatives et les bannières adaptatives intégrées

Avant de commencer

Avant de continuer, assurez-vous de configurer des bannières publicitaires.

Pour voir un exemple complet de bannière adaptative intégrée, téléchargez l'exemple d'application suivant :

Implémenter des bannières adaptatives intégrées

Pour implémenter des bannières adaptatives intégrées, vous devez définir la taille de l'annonce, créer une demande d'annonce et charger l'annonce.

Pour dimensionner une bannière adaptative intégrée, déterminez la largeur de l'annonce. Voici quelques approches courantes :

  • Utiliser la largeur plein écran.
  • Utiliser la largeur de la mise en page parent contenant l'annonce.
  • Ajuster la largeur pour tenir compte des zones sécurisées de l'appareil.

Lorsque vous créez l'objet de taille de l'annonce, utilisez cette largeur calculée.

L'exemple suivant définit la taille de l'annonce, crée une demande d'annonce et charge l'annonce :

Kotlin

private fun loadAd() {
  // Create an inline adaptive ad size. 320 is a placeholder value.
  // Replace 320 with your banner container width.
  val adSize = AdSize.getCurrentOrientationInlineAdaptiveBannerAdSize(this, 320)

  // Step 1 - Create a BannerAdRequest object with ad unit ID and size.
  val adRequest = BannerAdRequest.Builder("AD_UNIT_ID", adSize).build()

  // Step 2 - Load the ad.
  BannerAd.load(
    adRequest,
    object : AdLoadCallback<BannerAd> {
      override fun onAdLoaded(ad: BannerAd) {
        // Assign the loaded ad to the BannerAd object.
        bannerAd = ad
        // Step 3 - Call BannerAd.getView() to get the View and add it
        // to view hierarchy on the UI thread.
        activity?.runOnUiThread {
          binding.bannerViewContainer.addView(ad.getView(requireActivity()))
        }
      }

      override fun onAdFailedToLoad(loadAdError: LoadAdError) {
        bannerAd = null
      }
    }
  )
}

Java

private void loadAd() {
  // Create an inline adaptive ad size. 320 is a placeholder value.
  // Replace 320 with your banner container width.
  AdSize adSize = AdSize.getCurrentOrientationInlineAdaptiveBannerAdSize(this, 320);

  // Step 1 - Create a BannerAdRequest object with ad unit ID and size.
  BannerAdRequest adRequest = new BannerAdRequest.Builder("AD_UNIT_ID",
      adSize).build();

  // Step 2 - Load the ad.
  BannerAd.load(
      adRequest,
      new AdLoadCallback<BannerAd>() {
        @Override
        public void onAdLoaded(@NonNull BannerAd ad) {
          // Assign the loaded ad to the BannerAd object.
          bannerAd = ad;
          // Step 3 - Call BannerAd.getView() to get the View and add it
          // to view hierarchy on the UI thread.
          if (getActivity() != null) {
            getActivity()
                .runOnUiThread(() ->
                    binding.bannerViewContainer.addView(ad.getView(getActivity())));
          }
        }

        @Override
        public void onAdFailedToLoad(@NonNull LoadAdError adError) {
          bannerAd = null;
        }
      });
}

Si vous devez mettre à jour ou créer des éléments de campagne pour utiliser des bannières adaptatives, consultez Configurer des éléments de campagne pour les bannières adaptatives.

Définir la mise en page de la bannière adaptative intégrée

Pour précharger une bannière adaptative intégrée pour une mise en page spécifique, utilisez les méthodes suivantes :

Si votre application est compatible avec les vues portrait et paysage, et que vous souhaitez précharger une bannière adaptative dans la mise en page actuelle, utilisez la AdSize.getCurrentOrientationInlineAdaptiveBannerAdSize(Context context, int width) méthode. Cette méthode charge une annonce dans la mise en page actuelle.

Limiter la hauteur de la bannière adaptative intégrée

Par défaut, les bannières adaptatives intégrées créées sans valeur maxHeight ont une hauteur maximale égale à la hauteur de l'appareil. Pour limiter la hauteur de la bannière adaptative intégrée, utilisez la AdSize.getInlineAdaptiveBannerAdSize(int width, int maxHeight) méthode.