Einzelne Interstitial-Anzeige laden

Interstitial-Anzeigen sind Vollbildanzeigen, die die Benutzeroberfläche der App überlagern. Diese Anzeigen werden an natürlichen Übergangspunkten in Ihrer App eingeblendet, z. B. zwischen Aktivitäten oder während Pausen in Spiellevels.

Wenn in Ihrer App eine Interstitial-Anzeige eingeblendet wird, können Nutzer entweder auf die Anzeige tippen und fortfahren oder die Anzeige schließen und zur App zurückkehren.

In diesem Leitfaden wird beschrieben, wie Sie Interstitial-Anzeigen in eine Android-App einbinden.

Hinweis

Bevor Sie fortfahren, führen Sie die folgenden Schritte aus:

  • Richten Sie GMA Next-Gen SDK ein.
  • Verwenden Sie die Test-Anzeigenblock-ID ca-app-pub-3940256099942544/1033173712 für Interstitial-Anzeigen.
    • Verwenden Sie beim Erstellen und Testen Ihrer App Testanzeigen anstelle von Live-Anzeigen. Wenn Sie die Testanzeigenblock-ID nicht verwenden, kann Google Ihr Konto sperren.
    • Ersetzen Sie diese ID vor der Veröffentlichung Ihrer App durch Ihre Anzeigenblock-ID.
    • Weitere Informationen zu GMA Next-Gen SDK-Testanzeigen finden Sie unter Testanzeigen aktivieren.

Anzeige laden

Im folgenden Beispiel wird eine einzelne Anzeige geladen:

Kotlin

// Load ads after you initialize MobileAds.
InterstitialAd.load(
  AdRequest.Builder(adUnitId).build(),
  object : AdLoadCallback<InterstitialAd> {
    override fun onAdLoaded(ad: InterstitialAd) {
      // Interstitial ad loaded.
      interstitialAd = ad
    }

    override fun onAdFailedToLoad(adError: LoadAdError) {
      // Interstitial ad failed to load.
      Log.e(TAG, "Interstitial ad failed to load: ${adError.message}")
      interstitialAd = null
    }
  },
)

Java

// Load ads after you initialize MobileAds.
InterstitialAd.load(
    new AdRequest.Builder(adUnitId).build(),
    new AdLoadCallback<InterstitialAd>() {
      @Override
      public void onAdLoaded(@NonNull InterstitialAd ad) {
        // Interstitial ad loaded.
        interstitialAd = ad;
      }

      @Override
      public void onAdFailedToLoad(@NonNull LoadAdError adError) {
        // Interstitial ad failed to load.
        Log.e(TAG, "Interstitial ad failed to load: " + adError.getMessage());
        interstitialAd = null;
      }
    });

Verwenden Sie beim Testen die Testanzeigenblock-ID: ca-app-pub-3940256099942544/1033173712.

Anzeige einblenden

Rufen Sie die Methode show auf, um eine Interstitial-Anzeige einzublenden.

Im folgenden Beispiel wird die Anzeige eingeblendet:

Kotlin

private fun showAd(interstitialAd: InterstitialAd, activity: Activity) {
  // Show the ad.
  interstitialAd.show(activity)
}

Java

private void showAd(InterstitialAd interstitialAd, Activity activity) {
  // Show the ad.
  interstitialAd.show(activity);
}

Auf Anzeigenereignisse warten

Bevor die Anzeige eingeblendet wird, müssen Sie auf Anzeigen-Lifecycle-Events warten. Im folgenden Beispiel werden Callbacks für Anzeigenereignisse registriert:

Kotlin

// Listen for ad events.
val ad = interstitialAd
if (ad == null) {
  Log.e(TAG, "Interstitial ad is not ready yet.")
  return
}

ad.adEventCallback =
  object : InterstitialAdEventCallback {
    override fun onAdShowedFullScreenContent() {
      // Interstitial ad did show.
    }

    override fun onAdDismissedFullScreenContent() {
      // Interstitial ad did dismiss.
      interstitialAd = null
    }

    override fun onAdFailedToShowFullScreenContent(
      fullScreenContentError: FullScreenContentError
    ) {
      // Interstitial ad failed to show.
      Log.e(TAG, "Interstitial ad failed to show: ${fullScreenContentError.message}")
    }

    override fun onAdImpression() {
      // Interstitial ad did record an impression.
    }

    override fun onAdClicked() {
      // Interstitial ad did record a click.
    }
  }

Java

// Listen for ad events.
if (interstitialAd == null) {
  Log.e(TAG, "Interstitial ad is not ready yet.");
  return;
}

interstitialAd.setAdEventCallback(
    new InterstitialAdEventCallback() {
      @Override
      public void onAdShowedFullScreenContent() {
        // Interstitial ad did show.
      }

      @Override
      public void onAdDismissedFullScreenContent() {
        // Interstitial ad did dismiss.
        interstitialAd = null;
      }

      @Override
      public void onAdFailedToShowFullScreenContent(
          @NonNull FullScreenContentError fullScreenContentError) {
        // Interstitial ad failed to show.
        Log.e(TAG, "Interstitial ad failed to show: " + fullScreenContentError.getMessage());
      }

      @Override
      public void onAdImpression() {
        // Interstitial ad did record an impression.
      }

      @Override
      public void onAdClicked() {
        // Interstitial ad did record a click.
      }
    });