Interstitial

Interstitial-Anzeigen sind Vollbildanzeigen, die die Benutzeroberfläche ihrer Host-App überlagern. Sie werden in der Regel an natürlichen Übergangspunkten innerhalb einer App angezeigt, beispielsweise zwischen Aktivitäten oder in den Pausen 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 weitergeleitet werden oder sie schließen und zur App zurückkehren.

In diesem Leitfaden wird erläutert, wie Sie Interstitial-Anzeigen in eine Flutter-App einbinden.

Immer mit Testanzeigen testen

Verwenden Sie beim Erstellen und Testen Ihrer Apps Testanzeigen anstelle von aktiven Produktionsanzeigen. Andernfalls kann Ihr Konto gesperrt werden.

Die einfachste Methode zum Laden von Testanzeigen ist die Verwendung unserer speziellen Test-Anzeigenblock-ID für Interstitials:

  • /21775744923/example/interstitial

Die Testanzeigenblöcke sind so konfiguriert, dass bei jeder Anfrage Testanzeigen zurückgegeben werden. Sie können sie in Ihren eigenen Apps verwenden, während Sie Code schreiben, testen und debuggen. Ersetzen Sie sie vor der Veröffentlichung Ihrer App durch Ihre eigenen Anzeigenblock-IDs.

Anzeige laden

Im folgenden Beispiel wird eine Interstitial-Anzeige geladen:

class InterstitialExampleState extends State<InterstitialExample> {
  AdManagerInterstitialAd? _interstitialAd;

  // TODO: replace this test ad unit with your own ad unit.
  final adUnitId = '/21775744923/example/interstitial';

  /// Loads an interstitial ad.
  void loadAd() {
    AdManagerInterstitialAd.load(
        adUnitId: adUnitId,
        request: const AdManagerAdRequest(),
        adLoadCallback: AdManagerInterstitialAdLoadCallback(
          // 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('AdManagerInterstitialAd failed to load: $error');
          },
        ));
  }
}

Ereignisse für Interstitial-Anzeigen

Mit FullScreenContentCallback können Sie den Lebenszyklus überwachen etwa das Ein- oder Ausblenden einer Anzeige. Festlegen AdManagerInterstitialAd.fullScreenContentCallback, bevor die Anzeige ausgeliefert wird, um Benachrichtigungen für diese Ereignisse. In diesem Beispiel werden alle Methoden implementiert:

class InterstitialExampleState extends State<InterstitialExample> {
  AdManagerInterstitialAd? _interstitialAd;

  // TODO: replace this test ad unit with your own ad unit.
  final adUnitId = '/21775744923/example/interstitial';

  /// Loads an interstitial ad.
  void loadAd() {
    AdManagerInterstitialAd.load(
        adUnitId: adUnitId,
        request: const AdManagerAdRequest(),
        adLoadCallback: AdManagerInterstitialAdLoadCallback(
          // 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('AdManagerInterstitialAd failed to load: $error');
          },
        ));
  }
}

Interstitial-Anzeige ausliefern

Ein AdManagerInterstitialAd wird als Overlay angezeigt. über dem gesamten App-Content platziert und statisch platziert wird; kann es daher nicht der Flutter-Widget-Baumstruktur. Sie können festlegen, wann die Anzeige ausgeliefert werden soll, indem Sie show() aufrufen.

_interstitiaAd.show();

Nachdem show() aufgerufen wurde, kann ein auf diese Weise angezeigtes Ad nicht mehr programmatisch geschlossen werden und erfordert eine Nutzereingabe. Ein AdManagerInterstitialAd kann nur angezeigt werden einmal. Nachfolgende Aufrufe, die angezeigt werden sollen, lösen onAdFailedToShowFullScreenContent aus.

Eine Anzeige muss gelöscht werden, wenn der Zugriff darauf nicht mehr erforderlich ist. Die Best Practice wann dispose() aufgerufen werden soll, finden Sie in der FullScreenContentCallback.onAdDismissedFullScreenContent und FullScreenContentCallback.onAdFailedToShowFullScreenContent-Callbacks.

Fertig! In Ihrer App können jetzt Interstitial-Anzeigen ausgeliefert werden.

Nächste Schritte