Recuperare informazioni sulla risposta di annuncio

Per scopi di debug e registrazione, gli annunci caricati correttamente forniscono un oggetto ResponseInfo. Questo oggetto contiene informazioni sull'annuncio caricato, oltre a informazioni sulla struttura a cascata della mediazione utilizzata per caricare l'annuncio.

Nei casi in cui un annuncio viene caricato correttamente, l'oggetto annuncio ha un metodoGetResponseInfo(). Ad esempio, InterstitialAd.GetResponseInfo() riceve le informazioni sulla risposta per un annuncio interstitial caricato.

Nei casi in cui gli annunci non si caricano e è disponibile solo un errore, le informazioni di risposta sono disponibili tramite AdFailedToLoadEventArgs.LoadAdError.GetResponseInfo().

InterstitialAd ad;

private void RequestInterstitial()
{
    ad = new InterstitialAd("AD_UNIT_ID");
    this.interstitial.OnAdLoaded += OnAdLoaded;
    this.interstitial.OnAdFailedToLoad += HandleOnAdFailedToLoad;
    AdRequest request = new AdRequest.Builder().Build();
    this.interstitial.LoadAd(request);
}

private void OnAdLoaded(object sender, EventArgs args)
{
    ResponseInfo info = ad.GetResponseInfo();
}

private void OnAdFailedToLoad(object sender, AdFailedToLoadEventArgs args)
{
    ResponseInfo info = args.LoadAdError.GetResponseInfo();
}

Informazioni sulla risposta

Ecco un output di esempio restituito da ResponseInfo.ToString() che mostra i dati di debug restituiti per un annuncio caricato:

Android

{
  "Response ID": "COOllLGxlPoCFdAx4Aod-Q4A0g",
  "Mediation Adapter Class Name": "com.google.ads.mediation.admob.AdMobAdapter",
  "Adapter Responses": [
    {
      "Adapter": "com.google.ads.mediation.admob.AdMobAdapter",
      "Latency": 328,
      "Ad Source Name": "Reservation campaign",
      "Ad Source ID": "7068401028668408324",
      "Ad Source Instance Name": "[DO NOT EDIT] Publisher Test Interstitial",
      "Ad Source Instance ID": "4665218928925097",
      "Credentials": {},
      "Ad Error": "null"
    }
  ],
  "Loaded Adapter Response": {
    "Adapter": "com.google.ads.mediation.admob.AdMobAdapter",
    "Latency": 328,
    "Ad Source Name": "Reservation campaign",
    "Ad Source ID": "7068401028668408324",
    "Ad Source Instance Name": "[DO NOT EDIT] Publisher Test Interstitial",
    "Ad Source Instance ID": "4665218928925097",
    "Credentials": {},
    "Ad Error": "null"
  },
  "Response Extras": {
    "mediation_group_name": "Campaign"
  }
}

iOS

 ** Response Info **
    Response ID: CIzs0ZO5kPoCFRqWAAAdJMINpQ
    Network: GADMAdapterGoogleAdMobAds

  ** Loaded Adapter Response **
    Network: GADMAdapterGoogleAdMobAds
    Ad Source Name: Reservation campaign
    Ad Source ID: 7068401028668408324
    Ad Source Instance Name: [DO NOT EDIT] Publisher Test Interstitial
    Ad Source Instance ID: [DO NOT EDIT] Publisher Test Interstitial
    AdUnitMapping:
    {
    }
    Error: (null)
    Latency: 0.391

  ** Extras Dictionary **
    {
        "mediation_group_name" = Campaign;
    }

  ** Mediation line items **
    Entry (1)
    Network: GADMAdapterGoogleAdMobAds
    Ad Source Name: Reservation campaign
    Ad Source ID:7068401028668408324
    Ad Source Instance Name: [DO NOT EDIT] Publisher Test Interstitial
    Ad Source Instance ID: [DO NOT EDIT] Publisher Test Interstitial
    AdUnitMapping:
    {
    }
    Error: (null)
    Latency: 0.391

I metodi sull'oggetto ResponseInfo includono:

Metodo Descrizione
GetAdapterResponses Restituisce l'elenco di AdapterResponseInfo contenenti metadati per ogni adattatore incluso nella risposta all'annuncio. Può essere utilizzato per eseguire il debug della mediazione con struttura a cascata e dell'esecuzione delle offerte. L'ordine dell'elenco corrisponde all'ordine della struttura a cascata della mediazione per questa richiesta di annuncio.

Per ulteriori informazioni, consulta Informazioni sulla risposta dell'adattatore.

GetLoadedAdapterResponseInfo Restituisce il AdapterResponseInfo corrispondente all'adattatore che ha caricato l'annuncio.
GetMediationAdapterClassName Restituisce il nome della classe dell'adattatore di mediazione della rete pubblicitaria che ha caricato l'annuncio.
GetResponseId L'identificatore risposta è un identificatore univoco per la risposta all'annuncio. Questo identificatore può essere utilizzato per identificare e bloccare l'annuncio nel Centro revisione annunci (ARC).
GetResponseExtras Restituisce informazioni aggiuntive sulla risposta all'annuncio. Gli extra possono restituire le seguenti chiavi:
  • mediation_group_name: il nome del gruppo di mediazione
  • mediation_ab_test_name: nome del test A/B di mediazione, se applicabile
  • mediation_ab_test_variant: variante utilizzata nel test A/B di mediazione, se applicabile

Ecco un esempio di valori di lettura di un ResponseInfo caricato:

private void OnAdLoaded(object sender, EventArgs args)
{
  ResponseInfo info = ad.GetResponseInfo();

  string responseId = responseInfo.GetResponseId();
  string mediationAdapterClassName = responseInfo.GetMediationAdapterClassName();
  List<AdapterResponseInfo> adapterResponses = responseInfo.GetAdapterResponses();
  AdapterResponseInfo loadedAdapterResponseInfo = responseInfo.GetLoadedAdapterResponseInfo();
  Dictionary<string, string> extras = responseInfo.GetResponseExtras();
  string mediationGroupName = extras["mediation_group_name"];
  string mediationABTestName = extras["mediation_ab_test_name"];
  string mediationABTestVariant = extras["mediation_ab_test_variant"];
}

Informazioni sulla risposta dell'adattatore

AdapterResponseInfo contiene metadati per ogni adattatore incluso nella risposta all'annuncio, che possono essere utilizzati per eseguire il debug della mediazione a cascata e dell'esecuzione delle aste. L'ordine dell'elenco corrisponde a quello della struttura a cascata della mediazione per la richiesta di annuncio.

Ecco un output di esempio restituito da AdapterResponseInfo:

Android

{
  "Adapter": "com.google.ads.mediation.admob.AdMobAdapter",
  "Latency": 328,
  "Ad Source Name": "Reservation campaign",
  "Ad Source ID": "7068401028668408324",
  "Ad Source Instance Name": "[DO NOT EDIT] Publisher Test Interstitial",
  "Ad Source Instance ID": "4665218928925097",
  "Credentials": {},
  "Ad Error": "null"
}

iOS

  Network: GADMAdapterGoogleAdMobAds
  Ad Source Name: Reservation campaign
  Ad Source ID: 7068401028668408324
  Ad Source Instance Name: [DO NOT EDIT] Publisher Test Interstitial
  Ad Source Instance ID: [DO NOT EDIT] Publisher Test Interstitial
  AdUnitMapping:
  {
  }
  Error: (null)
  Latency: 0.391

Per ogni rete pubblicitaria, AdapterResponseInfo offre i seguenti metodi:

Metodo Descrizione
AdError Recupera alla rete l'errore associato alla richiesta. Restituisce null se la rete ha caricato correttamente un annuncio o se la rete non è stata tentata.
AdSourceId Recupera l'ID sorgente annuncio associato a questa risposta dell'adattatore. Per le campagne, viene restituito 6060308706800320801 per un tipo di obiettivo della campagna con annunci con mediazione e 7068401028668408324 per i tipi di obiettivi di impressioni e clic. Consulta la sezione Origini annuncio per un elenco dei possibili ID origine annuncio quando un annuncio viene pubblicato da una rete pubblicitaria.
AdSourceInstanceId Recupera l'ID istanza dell'origine annuncio associato a questa risposta dell'adattatore.
AdSourceInstanceName Recupera il nome dell'istanza dell'origine annuncio associata a questa risposta dell'adattatore.
AdSourceName Recupera l'origine annuncio che rappresenta la rete pubblicitaria specifica che pubblica l'impressione. Per le campagne, viene restituito Mediated House Ads per un tipo di obiettivo della campagna con annunci con mediazione e Reservation Campaign per i tipi di obiettivi di impressioni e clic. Consulta Origini annuncio per un elenco dei possibili nomi delle origini annuncio quando un annuncio viene pubblicato da una rete pubblicitaria.
AdapterClassName Restituisce un nome di classe che identifica la rete pubblicitaria.
AdUnitMapping Recupera la configurazione di rete impostata dall'interfaccia utente di AdMob.
LatencyMillis Recupera il tempo impiegato dalla rete pubblicitaria per caricare un annuncio. Restituisce 0 se non è stato fatto alcun tentativo di connessione alla rete.

Ecco un esempio di valori di lettura di un AdapterResponseInfo caricato:

private void OnAdLoaded(object sender, EventArgs args)
{
  ResponseInfo responseInfo = ad.GetResponseInfo();
  AdapterResponseInfo loadedAdapterResponseInfo = responseInfo.getLoadedAdapterResponseInfo();

  AdError adError = loadedAdapterResponseInfo.AdError;
  string adSourceId = loadedAdapterResponseInfo.AdSourceId;
  string adSourceInstanceId = loadedAdapterResponseInfo.AdSourceInstanceId;
  string adSourceInstanceName = loadedAdapterResponseInfo.AdSourceInstanceName;
  string adSourceName = loadedAdapterResponseInfo.AdSourceName;
  string adapterClassName = loadedAdapterResponseInfo.AdapterClassName;
  Dictionary<string, string> credentials = loadedAdapterResponseInfo.AdUnitMapping;
  long latencyMillis = loadedAdapterResponseInfo.LatencyMillis;
}