À des fins de débogage et de journalisation, les annonces chargées avec succès fournissent un objet ResponseInfo
. Cet objet contient des informations sur l'annonce qu'il a chargée, ainsi que sur la cascade de médiation utilisée pour charger l'annonce.
Dans les cas où une annonce est chargée avec succès, l'objet d'annonce comporte une méthode GetResponseInfo()
. Par exemple, interstitialAd.GetResponseInfo()
obtient les informations de réponse pour une annonce interstitielle chargée.
Dans les cas où les annonces ne se chargent pas et où seule une erreur est disponible, les informations de réponse sont disponibles via 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();
});
}
Informations sur la réponse
Voici un exemple de résultat renvoyé par ResponseInfo.ToString()
montrant les données de débogage renvoyées pour une annonce chargée :
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
Les méthodes de l'objet ResponseInfo
incluent :
Méthode | Description |
---|---|
GetAdapterResponses |
Renvoie la liste des AdapterResponseInfo contenant les métadonnées de chaque adaptateur inclus dans la réponse publicitaire. Permet de déboguer l'exécution de la médiation en cascade et des enchères. L'ordre de la liste correspond à celui de la cascade de médiation pour cette demande d'annonce.
Pour en savoir plus, consultez Adapter Response Info. |
GetLoadedAdapterResponseInfo |
Renvoie le AdapterResponseInfo correspondant à l'adaptateur qui a chargé l'annonce. |
GetMediationAdapterClassName |
Renvoie le nom de classe de l'adaptateur de médiation du réseau publicitaire qui a chargé l'annonce. |
GetResponseId |
L'identifiant de réponse est un identifiant unique pour la réponse d'annonce. Cet identifiant peut être utilisé pour identifier et bloquer l'annonce dans le Centre de vérification des annonces. |
GetResponseExtras |
Renvoie des informations supplémentaires sur la réponse de l'annonce. Les extras peuvent renvoyer les clés suivantes :
|
Voici un exemple de lecture des valeurs d'un ResponseInfo
chargé :
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"];
});
}
Informations sur la réponse de l'adaptateur
AdapterResponseInfo
contient les métadonnées de chaque adaptateur inclus dans la réponse publicitaire, qui peuvent être utilisées pour déboguer l'exécution de la médiation en cascade et des enchères. L'ordre de la liste correspond à celui de la cascade de médiation pour la demande d'annonce.
Voici un exemple de résultat renvoyé par 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
Pour chaque réseau publicitaire, AdapterResponseInfo
fournit les méthodes suivantes :
Méthode | Description |
---|---|
AdError |
Obtient l'erreur associée à la requête envoyée au réseau. Renvoie null si le réseau a chargé une annonce ou si le réseau n'a pas été tenté. |
AdSourceId |
Obtient l'ID de source d'annonce associé à cette réponse de l'adaptateur. Pour les campagnes, 6060308706800320801 est renvoyé pour un type d'objectif de campagne "Annonces par médiation", et 7068401028668408324 est renvoyé pour les types d'objectif "Impressions" et "Clics". Consultez Sources d'annonces pour obtenir la liste des ID de sources d'annonces possibles lorsqu'un réseau publicitaire diffuse l'annonce. |
AdSourceInstanceId |
Obtient l'ID d'instance de source d'annonces associé à cette réponse de l'adaptateur. |
AdSourceInstanceName |
Obtient le nom de l'instance de source d'annonce associée à cette réponse de l'adaptateur. |
AdSourceName |
Récupère la source d'annonce représentant le réseau publicitaire spécifique qui diffuse l'impression. Pour les campagnes, Mediated House Ads est renvoyé pour un type d'objectif de campagne "Annonces par médiation", et Reservation Campaign est renvoyé pour les types d'objectif "Impressions" et "Clics". Consultez Sources d'annonces pour obtenir la liste des noms de sources d'annonces possibles lorsqu'un réseau publicitaire diffuse l'annonce. |
AdapterClassName |
Obtient un nom de classe qui identifie le réseau publicitaire. |
AdUnitMapping |
Obtient la configuration réseau définie dans l'UI AdMob. |
LatencyMillis |
Obtient le temps passé par le réseau publicitaire à charger une annonce.
Renvoie 0 si le réseau n'a pas été tenté. |
Voici un exemple de lecture des valeurs d'un AdapterResponseInfo
chargé :
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;
});
}