Mit dem Google Mobile Ads SDK können Sie Ihre Apps mit einer Ad Exchange Property monetarisieren. In dieser Anleitung erfahren Sie, wie Sie Ihre Apps für alle von Ad Exchange unterstützten Anzeigenformate konfigurieren.
Vorbereitung
- Sorgen Sie dafür, dass die Voraussetzungen erfüllt sind.
- 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 Ihre Ad Manager-App-ID hinzu (wird in der Ad Manager
Benutzeroberfläche angezeigt). Verwenden Sie dazu ein <meta-data>-Tag mit
android:name="com.google.android.gms.ads.APPLICATION_ID". 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>
Beachten Sie auch, dass das Hinzufügen des <meta-data>-Tags, wie oben gezeigt, zu einem Absturz mit der Meldung führt:
Missing application ID.
Als Nächstes können Sie das Google Mobile Ads SDK initialisieren und ein Anzeigenformat auswählen, das angezeigt werden soll. Im Rest dieser Anleitung wird das Bannerformat verwendet, um zu veranschaulichen, wie Sie eine Anzeige aus Ad Exchange laden können. Die gleichen Schritte können für alle Anzeigenformate angewendet werden, die vom Google Mobile Ads SDK unterstützt werden.
Anzeige aus Ad Exchange laden
Sie können anstelle einer Anzeigenblock-ID einen Ad Exchange-Web-Property-Code mit einem nachgestellten Schrägstrich verwenden. Beispiel: ca-mb-app-pub-5629679302779023/.
Im folgenden Beispiel wird der Ad Exchange-Web-Property-Code 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)));
}
});
Beachten Sie, dass das Fehlen eines nachgestellten Schrägstrichs im Ad Exchange-Web-Property-Code zu einem Fehler bei der Anzeigenanfrage mit der folgenden Meldung führt:
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.
Generieren Sie anschließend über die Ad Manager-Benutzeroberfläche ein Ad Exchange-Tag und kopieren Sie es in Ihre App. Das generierte Tag sollte den Ad Exchange-Web-Property-Code gefolgt von den Anzeigenblock-IDs der untergeordneten Anzeigenblöcke ohne nachgestellten Schrägstrich enthalten, z. B. ca-mb-app-pub-5629679302779023/banner.
Jetzt weißt du Bescheid. Ihre App ist jetzt bereit, Banneranzeigen aus Ad Exchange zu laden und anzuzeigen.
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 einfügen. Ersetzen Sie im folgenden Code
beispiel „123“ durch die Mindestpreise (als Millionstel) und die Standardwährung Ihres Netzwerks. Beispiel für die Angabe als Millionstel: Wenn Sie als Standardwährung Euro nutzen und „6000000“ eingeben, entspricht das 6 €.
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();