Mediazione


Mediazione AdMob è una funzionalità che consente di pubblicare nelle tue app annunci provenienti da più sorgenti, tra cui la Rete AdMob, le reti pubblicitarie di terze parti e le campagne AdMob. Mediazione AdMob contribuisce a ottimizzare il tasso di riempimento e ad aumentare la monetizzazione inviando richieste di annunci a più reti per assicurarti di trovare la migliore rete pubblicitaria disponibile per pubblicare annunci. Case study.

Prerequisiti

Prima di poter integrare la mediazione per un formato dell'annuncio, devi integrare il formato dell'annuncio nella tua app:

Non hai mai utilizzato la mediazione? Leggi la Panoramica di AdMob mediazione.

Inizializza l'SDK Mobile Ads

La guida rapida illustra come inizializzare gli annunci per cellulari l'SDK. Durante la chiamata di inizializzazione, anche gli adattatori di mediazione ricevono inizializzato. È importante attendere il completamento dell'inizializzazione prima di caricare annunci per garantire la piena partecipazione di ogni rete pubblicitaria sul la prima richiesta di annuncio.

Il codice campione seguente mostra come controllare l'inizializzazione di ogni adattatore prima di effettuare una richiesta di annuncio.

// 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.
}

Per ulteriori informazioni sull'utilizzo dei Futures, consulta Utilizzare i Futures per monitorare lo stato di completamento delle chiamate di metodo.

Controlla il valore di adNetworkClassName

Ogni risultato dell'annuncio contiene informazioni sul nome della classe della rete pubblicitaria che ha recuperato l'annuncio corrente.

Di seguito è riportato un codice di esempio che registra il nome della classe della rete pubblicitaria da un AdResult restituito da un AdView. È possibile usare un codice simile per interstitial e annunci con premio:

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.
}

Assicurati di disattivare l'aggiornamento nell'interfaccia utente di tutte le reti pubblicitarie di terze parti per l'annuncio banner utilizzate nella Mediazione AdMob. In questo modo eviterai un doppio aggiornamento, poiché AdMob attiva anche un aggiornamento in base alla frequenza di aggiornamento dell'unità pubblicitaria banner.

Passaggi successivi

L'SDK Google Mobile Ads per C++ racchiude le implementazioni degli SDK per Android e iOS per la mediazione. Di conseguenza, l'ulteriore configurazione, inclusa l'installazione adattatori di mediazione, è specifico per le piattaforme Android e iOS. Per maggiori informazioni di Google Mobile Ads, consulta la pagina Scegli le reti dell'SDK Google Mobile Ads per Android guida di Google e Google SDK Mobile Ads per iOS Scegli le reti .