Anuncios de banner adaptable intercalados

Selecciona la plataforma: Android iOS Flutter Android (heredada)

Los banners adaptables te permiten especificar el ancho de un anuncio para determinar cuál es su tamaño óptimo para cada dispositivo. A diferencia de los banners adaptables fijos, los intercalados son más grandes, más altos y no usan alturas fijas. Los banners adaptables intercalados tienen una altura variable. Estos banners pueden ocupar toda la pantalla o la altura máxima que especifiques.

En esta guía, se explica cómo crear banners adaptables intercalados y establecer su tamaño.

En la siguiente imagen, se muestran banners adaptables intercalados en contenido desplazable:

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

Antes de comenzar

Antes de continuar, asegúrate de configurar los anuncios de banner.

Para ver un ejemplo completo de un banner adaptable intercalado, descarga la siguiente app de ejemplo:

Implementa banners adaptables intercalados

Para implementar banners adaptables intercalados, debes establecer el tamaño del anuncio, crear una solicitud de anuncio y cargarlo.

Para definir el tamaño de un banner adaptable intercalado, determina el ancho del anuncio. Entre los enfoques comunes, se incluyen los siguientes:

  • Usa el ancho de pantalla completa.
  • Usa el ancho del diseño de nivel superior que contiene el anuncio.
  • Ajusta el ancho para respetar las áreas seguras del dispositivo.

Cuando crees el objeto de tamaño del anuncio, usa ese ancho calculado.

En el siguiente ejemplo, se establece el tamaño del anuncio, se crea una solicitud de anuncio y se carga el anuncio:

Kotlin

private fun loadInlineAdaptiveBannerAd(adView: AdView, activity: Activity) {
  // Create an inline adaptive ad size. 320 is a placeholder value.
  // Replace 320 with your banner container width.
  val bannerWidth = 320
  val adSize = AdSize.getCurrentOrientationInlineAdaptiveBannerAdSize(activity, bannerWidth)
  val adRequest = BannerAdRequest.Builder(AD_UNIT_ID, adSize).build()

  adView.loadAd(
    adRequest,
    object : AdLoadCallback<BannerAd> {
      override fun onAdLoaded(ad: BannerAd) {
        Log.d(TAG, "Inline adaptive banner ad loaded.")
      }

      override fun onAdFailedToLoad(adError: LoadAdError) {
        Log.d(TAG, "Inline adaptive banner ad failed to load: $adError")
      }
    },
  )
}

Java

private void loadInlineAdaptiveBannerAd(@NonNull AdView adView, @NonNull Activity activity) {
  // Create an inline adaptive ad size. 320 is a placeholder value.
  // Replace 320 with your banner container width.
  int bannerWidth = 320;
  AdSize adSize = AdSize.getCurrentOrientationInlineAdaptiveBannerAdSize(activity, bannerWidth);
  BannerAdRequest adRequest = new BannerAdRequest.Builder(AD_UNIT_ID, adSize).build();

  adView.loadAd(
      adRequest,
      new AdLoadCallback<BannerAd>() {
        @Override
        public void onAdLoaded(@NonNull BannerAd bannerAd) {
          Log.d(TAG, "Inline adaptive banner ad loaded.");
        }

        @Override
        public void onAdFailedToLoad(@NonNull LoadAdError adError) {
          Log.d(TAG, "Inline adaptive banner ad failed to load: " + adError);
        }
      });
}

Reemplaza AD_UNIT_ID por tu ID de unidad de anuncios.

Establece un tamaño de anuncio menor o igual que el tamaño de la pantalla del dispositivo. Para determinar el tamaño máximo de la pantalla, usa el método Resources.getDisplayMetrics. Las dimensiones del objeto AdSize usan píxeles independientes de la densidad (dp). Cuando realices la comparación, convierte el tamaño de la pantalla de píxeles a dp. Para obtener detalles sobre las restricciones de tamaño, consulta los requisitos de tamaño de las solicitudes de anuncios.

Cómo establecer el diseño del banner adaptable intercalado

Para precargar un anuncio de banner adaptable intercalado para un diseño específico, usa los siguientes métodos:

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

Cómo limitar la altura del banner adaptable intercalado

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