Interstitial-Anzeigen sind Vollbildanzeigen, die die Benutzeroberfläche der Host-App verdecken. Sie werden in der Regel an natürlichen Übergangspunkten innerhalb einer App eingeblendet, z. B. zwischen Aktivitäten oder in der Pause zwischen den Levels eines Spiels. Wenn in einer App eine Interstitial-Anzeige eingeblendet wird, kann der Nutzer entweder auf die Anzeige tippen und zum Ziel wechseln oder sie schließen und zur App zurückkehren.
In diesem Leitfaden erfahren Sie, wie Sie Interstitial-Anzeigen in eine Flutter-App einbinden.
Immer mit Testanzeigen testen
Verwenden Sie beim Erstellen und Testen Ihrer Apps Testanzeigen anstelle von Produktionsanzeigen. Andernfalls kann dein Konto gesperrt werden.
Testanzeigen lassen sich am einfachsten mit unserer speziellen Test-ID für Anzeigenblöcke für Interstitials laden:
Android
ca-app-pub-3940256099942544/1033173712
iOS
ca-app-pub-3940256099942544/4411468910
Die Testanzeigenblöcke sind so konfiguriert, dass bei jeder Anfrage Testanzeigen zurückgegeben werden. Sie können sie beim Programmieren, Testen und Debuggen in Ihren eigenen Apps verwenden. Ersetzen Sie sie einfach durch Ihre eigenen Anzeigenblock-IDs, bevor Sie Ihre App veröffentlichen.
Anzeige laden
Im folgenden Beispiel wird eine Interstitial-Anzeige geladen:
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'); }, )); } }
Ereignisse für Interstitial-Anzeigen
Mit FullScreenContentCallback
können Sie auf Lebenszyklus-Ereignisse warten, z. B. das Ein- oder Ausblenden der Anzeige. Legen Sie InterstitialAd.fullScreenContentCallback
fest, bevor die Anzeige ausgeliefert wird, um bei diesen Ereignissen Benachrichtigungen zu erhalten. In diesem Beispiel werden alle Methoden implementiert:
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'); }, )); } }
Interstitial-Anzeige einblenden
Ein InterstitialAd
wird als Overlay
über dem gesamten App-Inhalt angezeigt und statisch platziert. Daher kann es nicht zum Flutter-Widget-Baum hinzugefügt werden. Sie können festlegen, wann die Anzeige erscheinen soll, indem Sie show()
aufrufen.
_interstitiaAd.show();
Sobald show()
aufgerufen wurde, kann ein auf diese Weise angezeigtes Ad
nicht mehr programmatisch geschlossen werden und erfordert eine Nutzereingabe. Ein InterstitialAd
kann nur einmal angezeigt werden. Nachfolgende Aufrufe zum Anzeigen lösen onAdFailedToShowFullScreenContent
aus.
Eine Anzeige muss entsorgt werden, wenn kein Zugriff mehr darauf benötigt wird. In den Callbacks FullScreenContentCallback.onAdDismissedFullScreenContent
und FullScreenContentCallback.onAdFailedToShowFullScreenContent
wird empfohlen, wann dispose()
aufgerufen werden sollte.
Fertig! In Ihrer App können jetzt Interstitial-Anzeigen ausgeliefert werden.
Nächste Schritte
- Weitere Informationen finden Sie in den Best Practices für Interstitial-Anzeigen und im Leitfaden für Interstitial-Anzeigen.
- Hier finden Sie eine Fallstudie zu Interstitial-Anzeigen.
- Erstellen Sie in der AdMob-Benutzeroberfläche einen eigenen Interstitial-Anzeigenblock, falls Sie das noch nicht getan haben.