Mediation

AdMob Mediation ist eine Funktion, mit der Sie in Ihren Apps Anzeigen aus verschiedenen Quellen bereitstellen können. Dazu gehören das AdMob-Werbenetzwerk, Werbenetzwerke von Drittanbietern und AdMob-Kampagnen. Mit AdMob Mediation werden die Ausführungsrate maximiert und die Monetarisierung optimiert, indem Anzeigenanfragen an mehrere Werbenetzwerke gesendet werden. So wird das verfügbare Werbenetzwerk ermittelt, das am besten für die Auslieferung von Anzeigen geeignet ist. Fallstudie.

Voraussetzungen

Bevor Sie die Vermittlung für ein Anzeigenformat einbinden können, müssen Sie dieses Anzeigenformat in Ihre App einbinden:

Neu bei der Vermittlung? Weitere Informationen finden Sie unter Übersicht über die AdMob-Vermittlung.

Mobile Ads SDK initialisieren

In der Kurzanleitung erfahren Sie, wie Sie das Mobile Ads SDK initialisieren. Während dieses Initialisierungsaufrufs werden auch die Vermittlungsadapter initialisiert. Warten Sie mit dem Laden von Anzeigen, bis die Initialisierung abgeschlossen ist, damit jedes Werbenetzwerk bei der ersten Anzeigenanfrage vollständig berücksichtigt wird.

Der folgende Beispielcode zeigt, wie Sie den Initialisierungsstatus jedes Adapters überprüfen können, bevor Sie eine Anzeigenanfrage stellen.

// Initialize the Google Mobile Ads library
firebase::gma::Initialize(*app);

// In a game loop, monitor the initialization status
auto initialize_future = firebase::gma::InitializeLastResult();

if (initialize_future.status() == firebase::kFutureStatusComplete &&
    initialize_future.error() == firebase::gma::kAdErrorCodeNone) {
  // Initialization completed successfully, log the adapter status:
  std::map<std::string, firebase::gma::AdapterStatus> adapter_status_map =
      firebase::gma::GetInitializationStatus().GetAdapterStatusMap();

  for (auto it = adapter_status_map.begin(); it != adapter_status_map.end(); ++it) {
    std::string adapter_class_name = it->first;
    firebase::gma::AdapterStatus adapter_status = it->second;
    printf(“adapter: %s \t description: %s \t is_initialized: %d latency: %d\n”,
       adapter_class_name.c_str(),
       adapter_status.description().c_str(),
       adapter_status.is_initialized(),
       adpater_status.latency());
  }
} else {
  // Handle initialization error.
}

Weitere Informationen zur Verwendung von Futures finden Sie unter Mit Futures den Abschlussstatus von Methodenaufrufen überwachen.

Wert von adNetworkClassName prüfen

Jedes Anzeigenergebnis enthält Informationen zum Klassennamen des Werbenetzwerks, das die aktuelle Anzeige abgerufen hat.

Mit diesem Beispielcode wird der Name der Werbenetzwerkklasse aus einem AdResult protokolliert, der von einem AdView zurückgegeben wurde. Ähnlicher Code kann für Interstitial-Anzeigen und Anzeigen mit Prämie verwendet werden:

firebase::Future<AdResult> load_ad_future = banner_view.loadAd(ad_request);

// In a game loop, monitor the ad load status
if (load_ad_future.status() == firebase::kFutureStatusComplete &&
    load_ad_future.error() == firebase::gma::kAdErrorCodeNone) {
  const AdResult* ad_result = load_ad_future.result();
  printf(“Loaded ad with adapter class name: %s\n”,
    ad_result->adapter_class_name().c_str());
} else {
  // Handle the load ad error.
}

Deaktivieren Sie die Aktualisierung in allen Benutzeroberflächen von Drittanbieter-Werbenetzwerken für Banneranzeigenblöcke, die in AdMob Mediation verwendet werden. Dadurch wird eine doppelte Aktualisierung vermieden, da AdMob eine Aktualisierung basierend auf der Aktualisierungsrate Ihres Banneranzeigenblocks auslöst.

Nächste Schritte

Das Google Mobile Ads C++ SDK umschließt die Android- und iOS SDK-Implementierungen für die Vermittlung. Daher sind weitere Konfigurationen, einschließlich der Installation von Vermittlungsadapter, spezifisch für die Android- und iOS-Plattformen. Weitere Informationen finden Sie im Google Mobile Ads Android SDK – Netzwerkauswahl-Leitfaden und im Google Mobile Ads iOS SDK – Netzwerkauswahl-Leitfaden.