Usa banners adaptables intercalados para contenido desplazable

Selecciona la plataforma: Android (beta) New-selected Android iOS Flutter

Los banners adaptables te permiten especificar el ancho de un anuncio para determinar cuál es su tamaño óptimo. Asimismo, maximizan el rendimiento optimizando el tamaño del anuncio para cada dispositivo. Este enfoque brinda oportunidades para mejorar el rendimiento.

En comparación con los banners adaptables fijos, los intercalados son más grandes y más altos, y usan alturas variables en lugar de fijas. Los banners adaptables intercalados tienen una altura variable y pueden abarcar toda la pantalla o la altura máxima que especifiques.

Los banners adaptables intercalados se colocan en contenido que se puede desplazar, por ejemplo:

Diagrama que muestra las diferencias entre los banners adaptables y los banners adaptables intercalados

Antes de comenzar

Antes de continuar, asegúrate de haber completado la guía de introducción a los anuncios de banner.

Implementa banners adaptables

En el siguiente ejemplo, se muestran estos pasos:

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;
        }
      });
}

Cuando implementes banners adaptables en tu app, ten en cuenta los siguientes puntos:

  • Los tamaños de banners adaptables intercalados funcionan mejor cuando se usa todo el ancho disponible. En la mayoría de los casos, este tamaño es el ancho completo de la pantalla del dispositivo en uso o el ancho completo del contenido principal del banner. Debes conocer el ancho de la vista que se colocará en el anuncio, el ancho del dispositivo, el ancho del contenido principal y las áreas seguras aplicables.
  • Es posible que debas actualizar las líneas de pedido o crear unas nuevas para trabajar con tamaños adaptables. Obtén más información.

Orienta el tamaño del banner adaptable intercalado

Para precargar un anuncio de banner adaptable intercalado en una orientación específica, usa los siguientes métodos:

Si tu app admite vistas verticales y horizontales, y quieres precargar un anuncio de banner adaptable en la orientación actual, usa AdSize.getCurrentOrientationInlineAdaptiveBannerAdSize(Context context, int width). Este método carga un anuncio en la orientación actual.

Limita la altura del banner adaptable intercalado

De forma predeterminada, los banners adaptables intercalados para los que se crea una instancia sin un valor de maxHeight tienen un valor de maxHeight igual a la altura del dispositivo. Para limitar la altura del banner adaptable intercalado, usa el método AdSize.getInlineAdaptiveBannerAdSize(int width, int maxHeight).