Anúncios de banner adaptativo inline

Selecione a plataforma: Android iOS Flutter Android (legada)

Com os banners adaptativos, é possível especificar a largura de um anúncio para determinar o tamanho ideal dele em cada dispositivo. Ao contrário dos banners adaptativos fixos, os adaptativos inline são maiores, mais altos e não usam alturas fixas, Os banners adaptativos inline têm altura variável. Os banners inline podem preencher a tela inteira ou uma altura máxima especificada por você.

Este guia aborda como criar banners adaptativos inline e definir o tamanho deles.

A imagem abaixo mostra banners adaptativos inline em conteúdo com rolagem:

Diagrama mostra as diferenças entre banners adaptativos e adaptativos inline.

Antes de começar

Antes de continuar, configure os anúncios de banner.

Para conferir um exemplo completo de banner adaptativo inline, faça o download do seguinte app de exemplo:

Implementar banners adaptativos inline

Para implementar esses banners, defina o tamanho dele, crie uma solicitação e carregue o anúncio.

Para dimensionar um banner adaptativo inline, determine a largura do anúncio. As abordagens comuns incluem:

  • Usar a largura da tela cheia.
  • Usar a largura do layout pai que contém o anúncio.
  • Ajustar a largura para considerar as áreas seguras do dispositivo.

Ao criar o objeto de tamanho do anúncio, use essa largura calculada.

O exemplo a seguir define o tamanho do anúncio, cria uma solicitação de anúncio e carrega o anúncio:

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

Substitua AD_UNIT_ID pelo ID do seu bloco de anúncios.

Defina um tamanho de anúncio menor ou igual ao tamanho da tela do dispositivo. Para determinar o tamanho máximo da tela, use o método Resources.getDisplayMetrics. As dimensões do objeto AdSize usam pixels independentes de densidade (dp). Ao comparar, converta o tamanho da tela de pixels para dp. Para detalhes sobre as restrições de tamanho, consulte Requisitos de tamanho da solicitação de anúncio.

Definir layout do banner adaptativo inline

Para pré-carregar um anúncio de banner adaptativo inline em um layout específico, use estes métodos:

Se o app aceita as visualizações em modo retrato e paisagem e você quer pré-carregar um anúncio de banner adaptativo no layout atual, use o método AdSize.getCurrentOrientationInlineAdaptiveBannerAdSize(Context context, int width). Ele carrega um anúncio no layout atual.

Limitar a altura do banner adaptativo inline

Por padrão, os banners adaptativos inline criados sem um valor de maxHeight têm uma altura máxima igual à do dispositivo. Para limitar a altura do banner adaptativo inline, use o método AdSize.getInlineAdaptiveBannerAdSize(int width, int maxHeight).