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()
recupera le informazioni sulla risposta per un annuncio interstitial caricato.
Nei casi in cui gli annunci non vengano caricati ed è disponibile solo un errore, le informazioni sulla risposta sono disponibili tramite LoadAdError.GetResponseInfo()
.
private void LoadInterstitialAd()
{
AdRequest adRequest = new AdRequest();
InterstitialAd.Load("AD_UNIT_ID", adRequest, (InterstitialAd insterstitialAd, LoadAdError error) =>
{
// If the operation failed with a reason.
if (error != null)
{
ResponseInfo errorInfo = error.GetResponseInfo();
Debug.LogError("Interstitial ad failed to load an ad with error : " + error);
return;
}
ResponseInfo loadInfo = insterstitialAd.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 dell'oggetto ResponseInfo
includono:
Metodo | Descrizione |
---|---|
GetAdapterResponses |
Restituisce l'elenco di AdapterResponseInfo contenenti i 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:
|
Ecco un esempio di valori di lettura di un ResponseInfo
caricato:
private void LoadInterstitialAd()
{
AdRequest adRequest = new AdRequest();
InterstitialAd.Load("AD_UNIT_ID", adRequest, (InterstitialAd insterstitialAd, LoadAdError error) =>
{
// If the operation failed with a reason.
if (error != null)
{
Debug.LogError("Interstitial ad failed to load an ad with error : " + error);
return;
}
ResponseInfo responseInfo = insterstitialAd.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 i metadati di ogni adattatore incluso nella risposta all'annuncio, che possono essere utilizzati per eseguire il debug della mediazione a cascata e dell'esecuzione delle offerte. L'ordine dell'elenco corrisponde all'ordine della struttura a cascata della mediazione per la richiesta di annuncio.
Ecco un esempio di output 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
fornisce i seguenti metodi:
Metodo | Descrizione |
---|---|
AdError |
Recupera l'errore associato alla richiesta alla rete. 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 |
Restituisce il tempo impiegato dalla rete pubblicitaria per caricare un annuncio.
Restituisce 0 se non è stato eseguito alcun tentativo di connessione alla rete. |
Ecco un esempio di valori di lettura di un AdapterResponseInfo
caricato:
private void LoadInterstitialAd()
{
AdRequest adRequest = new AdRequest();
InterstitialAd.Load("AD_UNIT_ID", adRequest, (InterstitialAd insterstitialAd, LoadAdError error) =>
{
// If the operation failed with a reason.
if (error != null)
{
Debug.LogError("Interstitial ad failed to load an ad with error : " + error);
return;
}
ResponseInfo responseInfo = insterstitialAd.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;
});
}