Direkten Zugriff für Ad Exchange einrichten

Das Google Mobile Ads SDK unterstützt die Monetarisierung Ihrer Apps mit einer Ad Exchange-Property. In diesem Leitfaden erfahren Sie, wie Sie Ihre Apps für alle von Ad Exchange unterstützten Anzeigenformate konfigurieren.

Voraussetzungen

App für den Zugriff auf Ad Exchange konfigurieren

Fügen Sie die Ad Manager-App-ID, die auf der Ad Manager-UI identifiziert wird, der Datei AndroidManifest.xml Ihrer App über ein <meta-data>-Tag mit android:name="com.google.android.gms.ads.APPLICATION_ID" hinzu. Geben Sie für android:value Ihre eigene Ad Manager-App-ID in Anführungszeichen ein.

<manifest>
    <application>
        <!-- Sample Ad Manager app ID: ca-app-pub-3940256099942544~3347511713 -->
        <meta-data
            android:name="com.google.android.gms.ads.APPLICATION_ID"
            android:value="ca-app-pub-xxxxxxxxxxxxxxxx~yyyyyyyyyy"/>
    </application>
</manifest>

Wenn das <meta-data>-Tag nicht wie oben gezeigt hinzugefügt wird, kommt es außerdem zu einem Absturz mit folgender Meldung:

Missing application ID.

Als Nächstes können Sie das Google Mobile Ads SDK initialisieren und das gewünschte Anzeigenformat auswählen. Im weiteren Verlauf dieses Leitfadens wird das Bannerformat implementiert, um zu veranschaulichen, wie Sie eine Anzeige aus Ad Exchange laden. Die Schritte können auch auf alle Anzeigenformate angewendet werden, die vom Google Mobile Ads SDK unterstützt werden.

Anzeige aus Ad Exchange laden

Sie können in Ihrer App anstelle der Anzeigenblock-ID einen Ad Exchange-Web-Property-Code mit einem abschließenden Schrägstrich verwenden.

So laden Sie beispielsweise eine Banneranzeige, indem Sie AdManagerAdView im Layout für Activity so platzieren:

# main_activity.xml
...
  <com.google.android.gms.ads.admanager.AdManagerAdView
      xmlns:ads="http://schemas.android.com/apk/res-auto"
      android:id="@+id/adManagerAdView"
      android:layout_width="wrap_content"
      android:layout_height="wrap_content"
      android:layout_centerHorizontal="true"
      android:layout_alignParentBottom="true"
      ads:adSize="BANNER"
      ads:adUnitId="ca-mb-app-pub-5629679302779023/">
  </com.google.android.gms.ads.admanager.AdManagerAdView>

Wenn dem Ad Exchange-Web-Property-Code kein abschließender Schrägstrich hinzugefügt wird (siehe oben), wird ein Fehler bei der Anzeigenanfrage mit folgender Meldung ausgelöst:

Invalid Request. Cannot determine request type. Is your ad unit id correct?

Sie können einen Ad Exchange-Web-Property-Code auch in einen Anzeigenblock umwandeln. Anschließend können Sie mit der Ad Manager-Benutzeroberfläche ein Ad Exchange-Tag generieren und in Ihre App kopieren. Das generierte Tag muss den Code der Ad Exchange-Web-Property sowie die IDs der untergeordneten Anzeigenblöcke ohne abschließenden Schrägstrich enthalten. Beispiel: ca-mb-app-pub-5629679302779023/banner

Alternativ können Sie ein AdManagerAdView programmatisch erstellen:

Java

AdManagerAdView adView = new AdManagerAdView(this);

adView.setAdSizes(AdSize.BANNER);
adView.setAdUnitId("ca-mb-app-pub-5629679302779023/");

// TODO: Add adView to your view hierarchy.

Kotlin

val adView = AdManagerAdView(this)

adView.adSizes = AdSize.BANNER
adView.adUnitId = "ca-mb-app-pub-5629679302779023/"

// TODO: Add adView to your view hierarchy.

Sobald die AdManagerAdView eingerichtet ist, können Sie die Methode loadAd() in der Klasse AdManagerAdView aufrufen und das Verhalten der Anzeige mithilfe von Anzeigenereignissen anpassen.

Fertig! In Ihrer App können jetzt Banneranzeigen aus Ad Exchange geladen und ausgeliefert werden.

Darüber hinaus können Sie eine Ad Exchange-Web-Property verwenden, um andere Anzeigenformate aus Ad Exchange zu laden und einzublenden. Die Anleitungen dazu finden Sie in den jeweiligen Anleitungen:

Mindestpreise hinzufügen (nur genehmigte europäische Publisher)

Sie können eine Anfrage für die Funktion „Mindestpreise“ stellen.

Nach der Genehmigung können Sie eine öffentliche oder eine private Etage in die Anzeigenanfrage aufnehmen. Verwenden Sie dazu die Parameter pubf bzw. pvtf. Ersetzen Sie im folgenden Codebeispiel „123“ durch die Mindestpreise in Mikros und der Standardwährung Ihres Netzwerks. Beispiel für die Anwendung von Mikros: Wenn Ihre Standardwährung USD ist, entspricht die Eingabe von „6000000“ dem Betrag von 6,00 $.

Java

Bundle extras = new Bundle();
// Public floor parameter.
extras.putString("pubf", "123");
// Private floor parameter.
extras.putString("pvtf", "123");

AdManagerAdRequest request = new AdManagerAdRequest.Builder()
    .addNetworkExtrasBundle(AdMobAdapter.class, extras)
    .build();

Kotlin

val extras = Bundle();
// Public floor parameter.
extras.putString("pubf", "123");
// Private floor parameter.
extras.putString("pvtf", "123");

val request = AdManagerAdRequest.Builder()
    .addNetworkExtrasBundle(AdMobAdapter::class::java, extras)
    .build();