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 a seguir mostra banners adaptativos inline em conteúdo com rolagem:
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 deles, 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.
Siga estas etapas:
Descubra qual é a largura do seu dispositivo ou defina uma:
Kotlin
private val adWidth: Int get() { val displayMetrics = resources.displayMetrics val adWidthPixels = if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.R) { val windowMetrics: WindowMetrics = this.windowManager.currentWindowMetrics windowMetrics.bounds.width() } else { displayMetrics.widthPixels } val density = displayMetrics.density return (adWidthPixels / density).toInt() }Java
public int getAdWidth() { DisplayMetrics displayMetrics = getResources().getDisplayMetrics(); int adWidthPixels = displayMetrics.widthPixels; if (VERSION.SDK_INT >= VERSION_CODES.R) { WindowMetrics windowMetrics = this.getWindowManager().getCurrentWindowMetrics(); adWidthPixels = windowMetrics.getBounds().width(); } float density = displayMetrics.density; return (int) (adWidthPixels / density); }Para receber um objeto de tamanho de anúncio adaptável inline, use um método estático na classe de tamanho do anúncio:
Kotlin
val adView = AdView(this@MainActivity) adView.setAdSize(AdSize.getCurrentOrientationInlineAdaptiveBannerAdSize(this, adWidth))Java
final AdView adView = new AdView(MainActivity.this); adView.setAdSize(AdSize.getCurrentOrientationInlineAdaptiveBannerAdSize(this, getAdWidth()));
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 mais detalhes sobre as restrições de tamanho, consulte
Resolver problemas de impressões não preenchidas no Ad Manager.
Se precisar atualizar ou criar itens de linha para usar banners adaptativos, consulte Configurar itens de linha para banners adaptativos.
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:
AdSize.getPortraitInlineAdaptiveBannerAdSize(Context context, int width)AdSize.getLandscapeInlineAdaptiveBannerAdSize(Context context, int width)
Se o app aceita as visualizações de retrato e paisagem e quiser 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 esse altura, use o método AdSize.getInlineAdaptiveBannerAdSize(int width, int maxHeight).