Einzelne App-Start-Anzeige laden

App-Start-Anzeigen sind ein Anzeigenformat für Publisher, die die Ladebildschirme ihrer App monetarisieren möchten. Nutzer können App-Start-Anzeigen jederzeit schließen. Wenn Nutzer Ihre App in den Vordergrund bringen, werden App-Start-Anzeigen eingeblendet.

Weitere Informationen finden Sie im Leitfaden für App-Start-Anzeigen.

In diesem Leitfaden wird beschrieben, wie Sie App-Start-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 ID des Test-Anzeigenblocks für App-Start-Anzeigen ca-app-pub-3940256099942544/9257395921.
    • 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 durch Ihre Anzeigenblock-ID, bevor Sie Ihre App veröffentlichen.
    • 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.
AppOpenAd.load(
  AdRequest.Builder(adUnitId).build(),
  object : AdLoadCallback<AppOpenAd> {
    override fun onAdLoaded(ad: AppOpenAd) {
      // App open ad loaded.
      appOpenAd = ad
    }

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

Java

// Load ads after you initialize MobileAds.
AppOpenAd.load(
    new AdRequest.Builder(adUnitId).build(),
    new AdLoadCallback<AppOpenAd>() {
      @Override
      public void onAdLoaded(AppOpenAd ad) {
        // App open ad loaded.
        appOpenAd = ad;
      }

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

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

Anzeige einblenden

Rufen Sie die Methode show auf, um eine App-Start-Anzeige einzublenden. App-Start-Anzeigen laufen vier Stunden nach dem Laden ab. Blenden Sie keine App-Start-Anzeige ein, die länger als vier Stunden geladen wird.

Im folgenden Beispiel wird die Anzeige eingeblendet:

Kotlin

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

Java

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

Kaltstarts und Ladebildschirme verwalten

Ein Kaltstart tritt auf, wenn Ihre App von einem Laufwerk gestartet wird. Ein Warmstart tritt auf, wenn Sie die App aus dem Arbeitsspeicher öffnen. Bei einem Kaltstart ist keine zuvor geladene Anzeige verfügbar, die ausgeliefert werden könnte. Bei einem Warmstart ist möglicherweise noch eine geladene Anzeige verfügbar, die präsentiert werden kann.

Bei einem Kaltstart interagieren Nutzer möglicherweise mit Ihrer App, bevor sie geladen wird und eine Anzeige zu sehen ist. Um die Nutzerfreundlichkeit nicht zu beeinträchtigen, sollten Sie App-Start-Anzeigen bei Kaltstarts nur auf einem Ladebildschirm einblenden, während die App-Assets geladen werden. Während Nutzer darauf warten, dass Ihre App geladen wird, können Sie App-Start-Anzeigen einblenden. Beim ersten Start der App darf keine App-Start-Anzeige eingeblendet werden. Wenn das Laden der Assets abgeschlossen ist und Nutzer den Hauptinhalt erreichen, bevor die Anzeige geladen wird, sollte die Anzeige nicht mehr präsentiert werden.

Laden Sie App-Assets in einem Hintergrundthread, damit das Laden fortgesetzt wird, während die Anzeige eingeblendet wird. Wenn der Ladebildschirm während der Anzeige der Werbung fertig geladen ist, schließen Sie den Ladebildschirm in der Callback-Methode zum Schließen der Anzeige.

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

private fun listenToAdEvents() {
  // Listen for ad events.
  val ad = appOpenAd
  if (ad == null) {
    Log.e(TAG, "App open ad is not ready yet.")
    return
  }

  ad.adEventCallback =
    object : AppOpenAdEventCallback {
      override fun onAdShowedFullScreenContent() {
        // App open ad did show.
      }

      override fun onAdDismissedFullScreenContent() {
        // App open ad did dismiss.
        appOpenAd = null
      }

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

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

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

Java

private void listenToAdEvents() {
  // Listen for ad events.
  if (appOpenAd == null) {
    Log.e(TAG, "App open ad is not ready yet.");
    return;
  }

  appOpenAd.setAdEventCallback(
      new AppOpenAdEventCallback() {
        @Override
        public void onAdShowedFullScreenContent() {
          // App open ad did show.
        }

        @Override
        public void onAdDismissedFullScreenContent() {
          // App open ad did dismiss.
          appOpenAd = null;
        }

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

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

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