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.
Vorbereitung
- Voraussetzungen erfüllen
- Konfigurieren Sie Ihre App für das Google Mobile Ads SDK.
App für den Zugriff auf Ad Exchange konfigurieren
Fügen Sie der Datei „AndroidManifest.xml“ Ihrer App die Ad Manager-App-ID (wird in der Ad Manager-Benutzeroberfläche angezeigt) über ein <meta-data>-Tag mit android:name="com.google.android.gms.ads.APPLICATION_ID" hinzu. Geben Sie neben android:value Ihre eigene Ad Manager-App-ID ein, umgeben von Anführungszeichen.
<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 Sie das Tag <meta-data> nicht wie oben gezeigt hinzufügen, kommt es zu einem Absturz mit der folgenden Meldung:
Missing application ID.
Als Nächstes können Sie das Google Mobile Ads SDK initialisieren und ein Anzeigenformat auswählen, das ausgeliefert werden soll. Im weiteren Verlauf dieses Leitfadens wird das Bannerformat implementiert, um zu veranschaulichen, wie Sie eine Anzeige aus Ad Exchange laden können. Dieselben Schritte können für alle Anzeigenformate gelten, die vom Google Mobile Ads SDK unterstützt werden.
Anzeige aus Ad Exchange laden
Anstelle einer Anzeigenblock-ID können Sie einen Ad Exchange-Web-Property-Code mit einem nachgestellten Schrägstrich verwenden. Beispiel: ca-mb-app-pub-5629679302779023/.
Im folgenden Beispiel wird der Code der Ad Exchange-Web-Property einer Banneranzeigenanfrage hinzugefügt:
Kotlin
val adRequest = BannerAdRequest.Builder("ca-mb-app-pub-5629679302779023/", AdSize.BANNER).build()
BannerAd.load(
adRequest,
object : AdLoadCallback<BannerAd> {
override fun onAdLoaded(ad: BannerAd) {
bannerAd = ad
activity?.runOnUiThread {
binding.bannerViewContainer.addView(ad.getView(requireActivity()))
}
}
}
)
Java
BannerAdRequest adRequest = new BannerAdRequest.Builder("ca-mb-app-pub-5629679302779023/",
AdSize.BANNER).build();
BannerAd.load(
adRequest,
new AdLoadCallback<BannerAd>() {
@Override
public void onAdLoaded(@NonNull BannerAd ad) {
bannerAd = ad;
runOnUiThread(
() -> binding.bannerViewContainer.addView(ad.getView(MainActivity.this)));
}
});
Wenn Sie am Ende des Ad Exchange-Web-Property-Codes keinen Schrägstrich hinzufügen, wird ein Fehler bei der Anzeigenanfrage mit der folgenden Meldung ausgegeben:
Invalid Request. Cannot determine request type. Is your ad unit id correct?
Sie können auch den Property-Code einer Ad Exchange-Web-Property in einen Anzeigenblock umwandeln.
Anschließend können Sie über die Ad Manager-Benutzeroberfläche ein Ad Exchange-Tag generieren und in Ihre App kopieren. Das generierte Tag sollte den Ad Exchange-Web-Property-Code enthalten, gefolgt von untergeordneten Anzeigenblock-IDs ohne abschließenden Schrägstrich, z. B. ca-mb-app-pub-5629679302779023/banner.
Geschafft! In Ihrer App können jetzt Banneranzeigen aus Ad Exchange geladen und präsentiert werden.
Außerdem können Sie eine Ad Exchange-Web-Property verwenden, um andere Anzeigenformate aus Ad Exchange zu laden und anzuzeigen. Folgen Sie dazu den entsprechenden Anleitungen:
Mindestpreise hinzufügen (nur für genehmigte Publisher in Europa)
Sie können die Verwendung der Funktion „Mindestpreise“ beantragen.
Nach der Genehmigung können Sie mit den Parametern pubf und pvtf einen öffentlichen oder privaten Mindestpreis in die Anzeigenanfrage aufnehmen. Ersetzen Sie im folgenden Codebeispiel „123“ durch die Mindestpreise in Mikroeinheiten und die Standardwährung Ihres Netzwerks. Beispiel für die Anwendung von Mikros: Wenn Ihre Standardwährung USD ist, entspricht die Eingabe von „6000000“ 6,00 $.
Kotlin
val extras = Bundle();
// Public floor parameter.
extras.putString("pubf", "123");
// Private floor parameter.
extras.putString("pvtf", "123");
val request = AdRequest.Builder("ca-mb-app-pub-5629679302779023/")
.setGoogleExtrasBundle(extras)
.build();
Java
Bundle extras = new Bundle();
// Public floor parameter.
extras.putString("pubf", "123");
// Private floor parameter.
extras.putString("pvtf", "123");
AdRequest request = new AdRequest.Builder("ca-mb-app-pub-5629679302779023/")
.setGoogleExtrasBundle(extras)
.build();