In diesem Leitfaden erfahren Sie, wie Sie einen Vermittlungsadapter in Ihre Android-App einbinden.
Vorbereitung
Bevor Sie die Vermittlung für ein Anzeigenformat einbinden können, müssen Sie dieses Anzeigenformat in Ihre App einbinden:
- Banneranzeigen
- Interstitial-Anzeigen
- Native Anzeigen
- Anzeigen mit Prämie
- Interstitial-Anzeigen mit Prämie
Sie sind neu bei der Vermittlung? Lesen Sie die Einführung in die Vermittlung.
Für Gebote: Google Mobile Ads SDK 18.3.0 oder höher.
Google Mobile Ads SDK initialisieren
In der Schnellstartanleitung erfahren Sie, wie Sie das initialisieren Google Mobile Ads SDK. Bei diesem Initialisierungsaufruf werden auch Vermittlungsadapter initialisiert. Sie müssen warten, bis die Initialisierung abgeschlossen ist, bevor Sie Anzeigen laden, um sicherzustellen, dass alle Werbenetzwerke an der ersten Anzeigenanfrage teilnehmen.
Im folgenden Beispielcode wird gezeigt, wie Sie den Initialisierungsstatus der einzelnen Adapter prüfen können, bevor Sie eine Anzeigenanfrage senden.
Java
public void initialize(Context context) {
new Thread(
() ->
// Initialize the Google Mobile Ads SDK on a background thread.
MobileAds.initialize(context, this::logAdapterStatus))
.start();
}
private void logAdapterStatus(InitializationStatus initializationStatus) {
// Check each adapter's initialization status.
Map<String, AdapterStatus> statusMap = initializationStatus.getAdapterStatusMap();
for (Map.Entry<String, AdapterStatus> entry : statusMap.entrySet()) {
String adapterClass = entry.getKey();
AdapterStatus status = entry.getValue();
Log.d(
TAG,
String.format(
"Adapter name: %s, Description: %s, Latency: %d",
adapterClass, status.getDescription(), status.getLatency()));
}
}
Kotlin
fun initialize(context: Context) {
CoroutineScope(Dispatchers.IO).launch {
// Initialize the Google Mobile Ads SDK on a background thread.
MobileAds.initialize(context, ::logAdapterStatus)
}
}
private fun logAdapterStatus(initializationStatus: InitializationStatus) {
// Check each adapter's initialization status.
for ((adapterClass, status) in initializationStatus.adapterStatusMap) {
Log.d(
TAG,
"Adapter: $adapterClass, Status: ${status.description}, Latency: ${status.latency}ms",
)
}
}
Prüfen, welche Werbenetzwerk-Adapterklasse die Anzeige geladen hat
Hier ist ein Beispielcode, der den Namen der Werbenetzwerkklasse für eine Banneranzeige protokolliert:
Java
ResponseInfo responseInfo = ad.getResponseInfo();
String adapterClassName = null;
if (responseInfo != null) {
adapterClassName = responseInfo.getMediationAdapterClassName();
}
Log.d(TAG, "Adapter class name: " + adapterClassName);
Kotlin
Log.d(TAG, "Adapter class name:" + ad.responseInfo?.mediationAdapterClassName)
Weitere Informationen zu dieser Methode finden Sie in der Dokumentation zu ResponseInfo unter getMediationAdapterClassName().
Anzeigenobjekt mit einer Aktivitätsinstanz initialisieren
Im Konstruktor für ein neues Anzeigenobjekt (z. B.
AdManagerAdView)
müssen Sie ein Objekt vom Typ
Contextübergeben.
Dieser Context wird bei der Vermittlung an andere Werbenetzwerke weitergegeben. Einige
Werbenetzwerke erfordern einen restriktiveren Context vom Typ
Activity
und können möglicherweise keine Anzeigen ohne eine Activity Instanz ausliefern. Daher empfehlen wir, beim Initialisieren von Anzeigenobjekten eine Activity-Instanz zu übergeben, um eine konsistente Nutzererfahrung mit Ihren vermittelten Werbenetzwerken zu gewährleisten.
Banneranzeigen mit Vermittlung verwenden
Deaktivieren Sie die Aktualisierung in allen Benutzeroberflächen von Drittanbieter-Anzeigenquellen für Banneranzeigenblöcke, die in der Vermittlung verwendet werden. Dadurch wird eine doppelte Aktualisierung verhindert, da Ad Manager auch eine Aktualisierung basierend auf der Aktualisierungsrate des Banneranzeigenblocks auslöst.
Native Anzeigen mit Vermittlung verwenden
Im Folgenden finden Sie einige Best Practices für die Implementierung der nativen Vermittlung.
- Richtlinie zur Präsentation nativer Anzeigen
- Jedes Werbenetzwerk hat eigene Richtlinien. Wenn Sie die Vermittlung verwenden, müssen Sie beachten, dass Ihre App weiterhin die Richtlinien des vermittelten Netzwerks einhalten muss, das die Anzeige bereitgestellt hat.
loadAd()anstelle vonloadAds()verwenden- Die Methode
loadAds()liefert nur Google-Anzeigen. Verwenden Sie stattdessenloadAd()für vermittelte Anzeigen.
Datenschutzgesetze von US-Bundesstaaten und DSGVO
Wenn Sie die Datenschutzgesetze von US-Bundesstaaten oder die Datenschutz-Grundverordnung (DSGVO) einhalten müssen, folgen Sie der Anleitung unter Einstellungen für Verordnungen von US-Bundesstaaten oder DSGVO-Einstellungen, um Ihre Vermittlungspartner in der Liste der Werbepartner für US-Bundesstaaten oder DSGVO unter „Datenschutz und Mitteilungen“ in Ad Manager hinzuzufügen. Andernfalls können Partner möglicherweise keine Anzeigen in Ihrer App ausliefern.
Weitere Informationen zum Aktivieren der eingeschränkten Datenverarbeitung (RDP) und zum Einholen der DSGVO-Einwilligung mit dem Google User Messaging Platform (UMP) SDK.