Os anúncios intersticiais são anúncios em tela cheia que cobrem a interface dos aplicativos host. Normalmente, eles são exibidos em pontos de transição natural no fluxo de um aplicativo, como entre atividades ou durante uma pausa entre os níveis de um jogo. Quando um app mostrar um anúncio intersticial, o usuário terá a opção de tocar nele e continuar até o destino ou fechar e retornar ao app.
Este guia explica como integrar anúncios intersticiais em um app Flutter.
Sempre faça testes 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
ca-app-pub-3940256099942544/1033173712
iOS
ca-app-pub-3940256099942544/4411468910
Os blocos de anúncios de teste são configurados para retornar anúncios de teste para cada solicitação, e você pode usá-las nos seus próprios apps durante a programação, o teste e a depuração. Basta substituí-los pelos seus próprios IDs de bloco de anúncios antes de publicar seu app.
Carregar um anúncio
O exemplo a seguir carrega um anúncio intersticial:
class InterstitialExampleState extends State<InterstitialExample> { InterstitialAd? _interstitialAd; // TODO: replace this test ad unit with your own ad unit. final adUnitId = Platform.isAndroid ? 'ca-app-pub-3940256099942544/1033173712' : 'ca-app-pub-3940256099942544/4411468910'; /// Loads an interstitial ad. void loadAd() { InterstitialAd.load( adUnitId: adUnitId, request: const AdRequest(), adLoadCallback: InterstitialAdLoadCallback( // Called when an ad is successfully received. onAdLoaded: (ad) { debugPrint('$ad loaded.'); // Keep a reference to the ad so you can show it later. _interstitialAd = ad; }, // Called when an ad request failed. onAdFailedToLoad: (LoadAdError error) { debugPrint('InterstitialAd failed to load: $error'); }, )); } }
Eventos de anúncio intersticial
Usando FullScreenContentCallback
, é possível detectar ciclos de vida
eventos, como quando o anúncio é mostrado ou dispensado. Definir
InterstitialAd.fullScreenContentCallback
antes de mostrar o anúncio para receber
notificações desses eventos. Este exemplo implementa cada método:
class InterstitialExampleState extends State<InterstitialExample> { InterstitialAd? _interstitialAd; // TODO: replace this test ad unit with your own ad unit. final adUnitId = Platform.isAndroid ? 'ca-app-pub-3940256099942544/1033173712' : 'ca-app-pub-3940256099942544/4411468910'; /// Loads an interstitial ad. void loadAd() { InterstitialAd.load( adUnitId: adUnitId, request: const AdRequest(), adLoadCallback: InterstitialAdLoadCallback( // Called when an ad is successfully received. onAdLoaded: (ad) { ad.fullScreenContentCallback = FullScreenContentCallback( // Called when the ad showed the full screen content. onAdShowedFullScreenContent: (ad) {}, // Called when an impression occurs on the ad. onAdImpression: (ad) {}, // Called when the ad failed to show full screen content. onAdFailedToShowFullScreenContent: (ad, err) { // Dispose the ad here to free resources. ad.dispose(); }, // Called when the ad dismissed full screen content. onAdDismissedFullScreenContent: (ad) { // Dispose the ad here to free resources. ad.dispose(); }, // Called when a click is recorded for an ad. onAdClicked: (ad) {}); debugPrint('$ad loaded.'); // Keep a reference to the ad so you can show it later. _interstitialAd = ad; }, // Called when an ad request failed. onAdFailedToLoad: (LoadAdError error) { debugPrint('InterstitialAd failed to load: $error'); }, )); } }
Exibir um anúncio intersticial
Um InterstitialAd
é exibido como um Overlay
.
sobre todo o conteúdo do app e é posicionada estaticamente; Assim, ele não pode ser adicionado
a árvore de widgets do Flutter. É possível escolher quando mostrar o anúncio chamando show()
.
_interstitiaAd.show();
Depois que show()
é chamado, um Ad
exibido dessa forma não pode ser dispensado
de forma programática e exige entrada do usuário. Só é possível mostrar uma InterstitialAd
uma vez. As chamadas seguintes acionarão onAdFailedToShowFullScreenContent
.
Um anúncio deverá ser descartado quando o acesso a ele não for mais necessário. A prática recomendada
para quando chamar dispose()
está no
FullScreenContentCallback.onAdDismissedFullScreenContent
e
Callbacks FullScreenContentCallback.onAdFailedToShowFullScreenContent
.
Pronto! Seu app está pronto para exibir anúncios intersticiais.
Próximas etapas
- Consulte Melhores anúncios intersticiais práticas e orientações sobre anúncios intersticiais.
- Confira um caso de anúncios intersticiais estudo.
- Crie seu próprio bloco de anúncios intersticiais na AdMob, caso ainda não tenha feito isso do BigQuery.