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, e sim variáveis. 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 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.
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()));
Definir o 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 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 à altura do dispositivo. Para limitar a altura do banner adaptativo inline, use o método AdSize.getInlineAdaptiveBannerAdSize(int width, int maxHeight).