Einzelne Interstitial-Anzeige laden

Interstitial-Anzeigen sind Vollbildanzeigen, die die App-Benutzeroberfläche überlagern. Sie werden an natürlichen Übergangspunkten in Ihrer App eingeblendet, z. B. zwischen Aktivitäten oder während Pausen in Spiellevels. Wenn in einer App eine Interstitial-Anzeige eingeblendet wird, können Ihre Nutzer entweder auf die Anzeige tippen und fortfahren oder die Anzeige schließen und zur App zurückkehren. Fallstudie lesen

In dieser Anleitung wird beschrieben, wie Sie Interstitial-Anzeigen in eine Android-App einbinden.

Vorbereitung

GMA Next-Gen SDK einrichten:

Immer Testanzeigen verwenden

Verwenden Sie beim Entwickeln und Testen Ihrer Apps Testanzeigen anstelle von Live-Anzeigen. Wenn Sie keine Testanzeigen verwenden, kann Google Ihr Konto sperren.

Testanzeigen lassen sich am einfachsten mit der speziellen Test-Anzeigenblock-ID für Interstitials unter Android laden:

ca-app-pub-3940256099942544/1033173712

Diese Anzeigenblock-ID wurde speziell konfiguriert, um bei jeder Anfrage Testanzeigen zurückzugeben. Sie können es beim Programmieren, Testen und Debuggen in Ihren eigenen Apps verwenden. Ersetzen Sie sie durch Ihre eigene Anzeigenblock-ID, bevor Sie Ihre App veröffentlichen.

Weitere Informationen zu GMA Next-Gen SDK-Testanzeigen finden Sie unter Testanzeigen aktivieren.

Anzeige laden

Das folgende Beispiel zeigt, wie Sie eine einzelne Anzeige laden:

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 Test-Anzeigenblock-ID: ca-app-pub-3940256099942544/1033173712.

Anzeige einblenden

Verwenden Sie die Methode show, um eine Interstitial-Anzeige zu präsentieren.

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

Hören Sie vor der Auslieferung der Anzeige auf Lifecycle-Events für Anzeigen:

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.
      }
    });