Os anúncios intersticiais são anúncios em tela cheia que cobrem a interface do app host. Geralmente, eles são exibidos em pontos de transição naturais no fluxo de um app, como entre atividades ou durante a pausa entre níveis de um jogo. Quando um app mostra um anúncio intersticial, o usuário tem a opção de tocar no anúncio e ir até o destino ou fechá-lo e retornar ao app.
Este guia explica como integrar anúncios intersticiais a um app Android.
Pré-requisitos
- SDK dos anúncios para dispositivos móveis do Google 19.7.0 ou mais recente.
- Leia o Guia explicativo.
Sempre teste com anúncios de teste
Ao criar e testar seus apps, use anúncios de teste em vez de anúncios de produção ativos. Sua conta poderá ser suspensa se isso não for feito.
A maneira mais fácil de carregar anúncios de teste é usar nosso ID de bloco de anúncios de teste dedicado para intersticiais Android:
/6499/example/interstitial
Ele foi configurado especialmente para retornar anúncios de teste para cada solicitação, e você pode usá-lo nos seus próprios apps durante a programação, o teste e a depuração. Só não se esqueça de substituí-lo pelo seu próprio ID do bloco de anúncios antes de publicar o app.
Para mais informações sobre como os anúncios de teste do SDK para dispositivos móveis funcionam, consulte Anúncios de teste.
Carregar um anúncio
Para carregar um anúncio intersticial, chame o método estático AdManagerInterstitialAd
load()
e transmita um
AdManagerInterstitialAdLoadCallback
para receber o anúncio
carregado ou possíveis erros. Assim como outros callbacks de carregamento de formato,
o AdManagerInterstitialAdLoadCallback
usa
LoadAdError
para fornecer detalhes de erros com maior fidelidade.
Java
import com.google.android.gms.ads.admanager.AdManagerInterstitialAd;
import com.google.android.gms.ads.admanager.AdManagerInterstitialAdLoadCallback;
public class MainActivity extends Activity {
private AdManagerInterstitialAd mAdManagerInterstitialAd;
private static final String TAG = "MainActivity";
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
AdManagerAdRequest adRequest = new AdManagerAdRequest.Builder().build();
AdManagerInterstitialAd.load(this,"/6499/example/interstitial", adRequest,
new AdManagerInterstitialAdLoadCallback() {
@Override
public void onAdLoaded(@NonNull AdManagerInterstitialAd interstitialAd) {
// The mAdManagerInterstitialAd reference will be null until
// an ad is loaded.
mAdManagerInterstitialAd = interstitialAd;
Log.i(TAG, "onAdLoaded");
}
@Override
public void onAdFailedToLoad(@NonNull LoadAdError loadAdError) {
// Handle the error
Log.d(TAG, loadAdError.toString());
mAdManagerInterstitialAd = null;
}
});
}
}
Kotlin
import com.google.android.gms.ads.admanager.AdManagerInterstitialAd;
import com.google.android.gms.ads.admanager.AdManagerInterstitialAdLoadCallback;
class MainActivity : AppCompatActivity() {
private var mAdManagerInterstitialAd: AdManagerInterstitialAd? = null
private final val TAG = "MainActivity"
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setContentView(R.layout.activity_main)
var adRequest = AdManagerAdRequest.Builder().build()
AdManagerInterstitialAd.load(this,"/6499/example/interstitial", adRequest, object : AdManagerInterstitialAdLoadCallback() {
override fun onAdFailedToLoad(adError: LoadAdError) {
Log.d(TAG, adError?.toString())
mAdManagerInterstitialAd = null
}
override fun onAdLoaded(interstitialAd: AdManagerInterstitialAd) {
Log.d(TAG, 'Ad was loaded.')
mAdManagerInterstitialAd = interstitialAd
}
})
}
}
Definir o FullScreenContentCallback
O FullScreenContentCallback
processa eventos relacionados à exibição do
InterstitialAd
. Antes de mostrar InterstitialAd
, defina o
callback:
Java
mAdManagerInterstitialAd.setFullScreenContentCallback(new FullScreenContentCallback(){
@Override
public void onAdClicked() {
// Called when a click is recorded for an ad.
Log.d(TAG, "Ad was clicked.");
}
@Override
public void onAdDismissedFullScreenContent() {
// Called when ad is dismissed.
// Set the ad reference to null so you don't show the ad a second time.
Log.d(TAG, "Ad dismissed fullscreen content.");
mAdManagerInterstitialAd = null;
}
@Override
public void onAdFailedToShowFullScreenContent(AdError adError) {
// Called when ad fails to show.
Log.e(TAG, "Ad failed to show fullscreen content.");
mAdManagerInterstitialAd = null;
}
@Override
public void onAdImpression() {
// Called when an impression is recorded for an ad.
Log.d(TAG, "Ad recorded an impression.");
}
@Override
public void onAdShowedFullScreenContent() {
// Called when ad is shown.
Log.d(TAG, "Ad showed fullscreen content.");
}
});
Kotlin
mAdManagerInterstitialAd?.fullScreenContentCallback = object: FullScreenContentCallback() {
override fun onAdClicked() {
// Called when a click is recorded for an ad.
Log.d(TAG, "Ad was clicked.")
}
override fun onAdDismissedFullScreenContent() {
// Called when ad is dismissed.
Log.d(TAG, "Ad dismissed fullscreen content.")
mAdManagerInterstitialAd = null
}
override fun onAdFailedToShowFullScreenContent(adError: AdError?) {
// Called when ad fails to show.
Log.e(TAG, "Ad failed to show fullscreen content.")
mAdManagerInterstitialAd = null
}
override fun onAdImpression() {
// Called when an impression is recorded for an ad.
Log.d(TAG, "Ad recorded an impression.")
}
override fun onAdShowedFullScreenContent() {
// Called when ad is shown.
Log.d(TAG, "Ad showed fullscreen content.")
}
}
Veicular o anúncio
Os anúncios intersticiais precisam ser exibidos durante pausas naturais no fluxo de um app.
Entre os níveis de um jogo é um bom exemplo, ou depois que o usuário conclui uma tarefa.
Para mostrar um intersticial, use o método show()
.
Java
if (mAdManagerInterstitialAd != null) {
mAdManagerInterstitialAd.show(MyActivity.this);
} else {
Log.d("TAG", "The interstitial ad wasn't ready yet.");
}
Kotlin
if (mAdManagerInterstitialAd != null) {
mAdManagerInterstitialAd?.show(this)
} else {
Log.d("TAG", "The interstitial ad wasn't ready yet.")
}
Algumas práticas recomendadas
- Avalie se os anúncios intersticiais são o tipo certo de anúncio para seu app.
- Os anúncios intersticiais funcionam melhor em apps com pontos de transição naturais. Esses pontos são criados pela conclusão de uma tarefa em um app, como o compartilhamento de uma imagem ou a conclusão de um nível do jogo. Considere em quais pontos do fluxo de trabalho do seu app você exibirá anúncios intersticiais e como o usuário provavelmente responderá.
- Lembre-se de pausar a ação ao exibir um anúncio intersticial.
- Há vários tipos diferentes de anúncios intersticiais: de texto, gráficos, em vídeo e muito mais. É importante garantir que, quando o app exibir um anúncio intersticial, ele também suspenda o uso de alguns recursos para permitir que o anúncio os aproveite. Por exemplo, quando você fizer a chamada para mostrar um anúncio intersticial, pause qualquer saída de áudio produzida pelo app.
- Espere um tempo de carregamento adequado.
- Assim como exibir anúncios intersticiais no momento certo, também é importante garantir que o usuário não precise esperar o carregamento deles. Carregar o anúncio com antecedência chamando
load()
antes da intenção de chamarshow()
pode garantir que seu app tenha um anúncio intersticial totalmente carregado quando estiver pronto quando for preciso exibi-lo. - Não sobrecarregue o usuário com anúncios.
- Embora aumentar a frequência de anúncios intersticiais no app possa parecer uma ótima maneira de aumentar a receita, também pode prejudicar a experiência do usuário e reduzir as taxas de cliques. Garanta que os usuários não sejam interrompidos com tanta frequência de modo que não possam mais aproveitar o app.
Exemplos no GitHub
Próximas etapas
- Saiba mais sobre a segmentação de anúncios.
- Saiba mais sobre a privacidade do usuário.
- Conheça a inicialização otimizada do SDK e o carregamento de anúncios (Beta).