Interstitial

Interstitial-Anzeigen sind Vollbildanzeigen, die die Benutzeroberfläche ihrer Host-App überlagern. Sie werden in der Regel an natürlichen Übergangspunkten im User Flow einer App eingeblendet, zum Beispiel zwischen Aktivitäten oder während der Pause zwischen Leveln in einem Spiel. Wenn ein App eine Interstitial-Anzeige präsentiert, hat der Nutzer die Möglichkeit, auf die Anzeige zu tippen. und fahren Sie mit ihrem Ziel fort oder schließen Sie sie und kehren Sie zur App zurück.

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

Immer mit Testanzeigen testen

Verwenden Sie beim Entwickeln und Testen Ihrer Apps nur Testanzeigen, Live-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:

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. können Sie sie beim Programmieren, Testen und Debuggen in Ihren eigenen Apps verwenden. Ersetzen Sie sie jedoch vor dem Veröffentlichen Ihrer

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 den Lebenszyklus überwachen Ereignisse wie das Ein- oder Ausblenden einer Anzeige. Legen Sie InterstitialAd.fullScreenContentCallback fest, bevor die Anzeige ausgeliefert wird, um Benachrichtigungen für diese Ereignisse zu erhalten. In diesem Beispiel werden die einzelnen 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 angezeigt. Über allen App-Inhalten und statisch platziert; kann es daher nicht der Flutter-Widget-Baumstruktur. Durch Aufrufen von show() können Sie festlegen, wann die Anzeige ausgeliefert werden soll.

_interstitiaAd.show();

Sobald show() aufgerufen wird, kann eine auf diese Weise angezeigte Ad nicht mehr geschlossen werden und erfordert Nutzereingaben. Ein InterstitialAd kann nur angezeigt werden einmal. Nachfolgende Aufrufe, die angezeigt werden sollen, lösen onAdFailedToShowFullScreenContent aus.

Eine Anzeige muss entsorgt werden, wenn kein Zugriff mehr darauf 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

Vollständiges Beispiel auf GitHub

Interstitial