Mit benutzerdefinierten Ereignissen können Sie die Vermittlungsabfolge für ein Werbenetzwerk hinzufügen, das kein unterstütztes Werbenetzwerk ist. Dazu implementieren Sie einen benutzerdefinierten Ereignisadapter für das Werbenetzwerk, das Sie einbinden möchten.
Ein vollständiges Beispielprojekt für ein benutzerdefiniertes Ereignis finden Sie in unserem GitHub-Repository.
Voraussetzungen
Bevor Sie benutzerdefinierte Ereignisse erstellen können, müssen Sie eines der folgenden Anzeigenformate in Ihre App einbinden:
Benutzerdefiniertes Ereignis in der UI erstellen
Ein benutzerdefiniertes Ereignis muss zuerst in der Benutzeroberfläche erstellt werden. AdMobWeitere Informationen finden Sie unterBenutzerdefiniertes Ereignis hinzufügen.
Sie müssen Folgendes angeben:
- Kursname
Der voll qualifizierte Name der Klasse, die den benutzerdefinierten Ereignisadapter implementiert, z. B.
com.google.ads.mediation.sample.customevent.SampleCustomEvent
. Als Best Practice empfehlen wir die Verwendung einer einzigen Adapterklasse für alle benutzerdefinierten Ereignisanzeigenformate.- Label
Ein eindeutiger Name, der die Anzeigenquelle definiert.
- Parameter
Ein optionales String-Argument, das an den benutzerdefinierten Ereignisadapter übergeben wird.
Adapter initialisieren
Bei der Initialisierung des Google Mobile Ads SDK wird
initialize()
über alle unterstützten Drittanbieter-Adapter und benutzerdefinierten Ereignisse aufgerufen, die für die App in der AdMob Benutzeroberfläche konfiguriert wurden. Verwenden Sie diese Methode, um die erforderlichen Einrichtungen oder Initialisierungen für das erforderliche Drittanbieter-SDK für Ihr benutzerdefiniertes Ereignis durchzuführen.
Java
package com.google.ads.mediation.sample.customevent; import com.google.android.gms.ads.AdFormat; import com.google.android.gms.ads.mediation.Adapter; import com.google.android.gms.ads.mediation.InitializationCompleteCallback; import com.google.android.gms.ads.mediation.MediationConfiguration; ... public class SampleAdNetworkCustomEvent extends Adapter { private static final String SAMPLE_AD_UNIT_KEY = "parameter"; private InitializationCompleteCallback initializationCallback; @Override public void initialize(Context context, InitializationCompleteCallback initializationCompleteCallback, List<MediationConfiguration> mediationConfigurations) { // This is where you will initialize the SDK that this custom // event is built for. Upon finishing the SDK initialization, // call the completion handler with success. initializationCompleteCallback.onInitializationSucceeded(); } }
Versionsnummern melden
Alle benutzerdefinierten Ereignisse müssen dem Google Mobile Ads SDK sowohl die Version des benutzerdefinierten Ereignisadapters selbst als auch die Version des Drittanbieter-SDKs melden, mit der die benutzerdefinierten Ereignisschnittstellen verknüpft sind. Versionen werden als
VersionInfo
Objekte gemeldet:
Java
package com.google.ads.mediation.sample.customevent; public class SampleCustomEvent extends Adapter { @Override public VersionInfo getVersionInfo() { String versionString = new VersionInfo(1, 2, 3); String[] splits = versionString.split("\\."); if (splits.length >= 4) { int major = Integer.parseInt(splits[0]); int minor = Integer.parseInt(splits[1]); int micro = Integer.parseInt(splits[2]) * 100 + Integer.parseInt(splits[3]); return new VersionInfo(major, minor, micro); } return new VersionInfo(0, 0, 0); } @Override public VersionInfo getSDKVersionInfo() { String versionString = SampleAdRequest.getSDKVersion(); String[] splits = versionString.split("\\."); if (splits.length >= 3) { int major = Integer.parseInt(splits[0]); int minor = Integer.parseInt(splits[1]); int micro = Integer.parseInt(splits[2]); return new VersionInfo(major, minor, micro); } return new VersionInfo(0, 0, 0); } }
Anzeigenanfrage
Wenn Sie eine Anzeige anfordern möchten, folgen Sie der Anleitung für das jeweilige Anzeigenformat: