Gli annunci interstitial sono annunci a schermo intero che coprono l'interfaccia dell'app host. In genere vengono visualizzati in punti di transizione naturali nel flusso di un'app, ad esempio tra un'attività e l'altra o durante la pausa tra i livelli di un gioco. Quando un'app mostra un annuncio interstitial, l'utente può scegliere di toccarlo e continuare alla destinazione o chiuderlo e tornare all'app.
Questa guida spiega come integrare gli annunci in interrompimento in un'app Flutter.
Esegui sempre test con annunci di prova
Quando crei e testi le tue app, assicurati di utilizzare annunci di prova anziché annunci pubblicati in produzione. In caso contrario, il tuo account potrebbe essere sospeso.
Il modo più semplice per caricare annunci di prova è utilizzare il nostro ID unità pubblicitaria di prova dedicato agli interstitial:
Android
ca-app-pub-3940256099942544/1033173712
iOS
ca-app-pub-3940256099942544/4411468910
Le unità pubblicitarie di test sono configurate per restituire annunci di test per ogni richiesta e puoi utilizzarle nelle tue app durante la codifica, i test e il debug. Assicurati solo di sostituirli con i tuoi ID unità pubblicitarie prima di pubblicare l'app.
Carica un annuncio
L'esempio seguente carica un annuncio interstitial:
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'); }, )); } }
Eventi degli annunci interstitial
Tramite FullScreenContentCallback
, puoi ascoltare gli eventi di ciclo di vita, ad esempio quando l'annuncio viene visualizzato o ignorato. Imposta
InterstitialAd.fullScreenContentCallback
prima di mostrare l'annuncio per ricevere
notifiche per questi eventi. In questo esempio vengono implementati tutti i metodi:
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'); }, )); } }
Mostrare un annuncio interstitial
Un InterstitialAd
viene visualizzato come Overlay
sopra tutti i contenuti dell'app ed è posizionato in modo statico. Pertanto, non può essere aggiunto alla
struttura ad albero dei widget Flutter. Puoi scegliere quando mostrare l'annuncio chiamando show()
.
_interstitiaAd.show();
Una volta chiamato show()
, un Ad
visualizzato in questo modo non può essere chiuso
programmaticamente e richiede l'input dell'utente. Un InterstitialAd
può essere mostrato
solo una volta. Le chiamate successive alla visualizzazione attiveranno onAdFailedToShowFullScreenContent
.
Un annuncio deve essere eliminato quando non è più necessario accedervi. La best practice per sapere quando chiamare dispose()
è nei callback FullScreenContentCallback.onAdDismissedFullScreenContent
e FullScreenContentCallback.onAdFailedToShowFullScreenContent
.
È tutto. La tua app è ora pronta per mostrare gli annunci interstitial.
Passaggi successivi
- Consulta le best practice e le indicazioni sugli annunci interstitial.
- Consulta un case study sugli annunci interstitial.
- Se non l'hai ancora fatto, crea la tua unità pubblicitaria interstitial nell'interfaccia utente di AdMob.