À des fins de débogage et de journalisation, les annonces chargées avec succès fournissent un objet GADResponseInfo
. Cet objet contient des informations sur l'annonce qu'il a chargée, ainsi que des informations 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 de l'annonce possède une propriété GADResponseInfo
. Par exemple, GADInterstitialAd.responseInfo
obtient les informations de réponse pour une annonce interstitielle chargée.
Si les annonces ne parviennent pas à se charger et qu'une seule erreur est disponible, GADResponseInfo
est disponible à l'aide de la clé GADErrorUserInfoKeyResponseInfo
dans le dictionnaire userInfo
de l'erreur.
Swift
fileprivate func loadInterstitial() { GADInterstitialAd.load( withAdUnitID: "ca-app-pub-3940256099942544/4411468910", request: request ) { (ad, error) in if let error = error { let responseInfo = (error as NSError).userInfo[GADErrorUserInfoKeyResponseInfo] as? GADResponseInfo print("\(String(describing: responseInfo))") return } let responseInfo = ad?.responseInfo print("\(String(describing: responseInfo))") } }
Objective-C
- (void)loadInterstitial { [GADInterstitialAd loadWithAdUnitID:@"ca-app-pub-3940256099942544/4411468910" request:request completionHandler:^(GADInterstitialAd *ad, NSError *error) { if (error) { GADResponseInfo *responseInfo = error.userInfo[GADErrorUserInfoKeyResponseInfo]; NSLog(@"%@", responseInfo.description); return; } GADResponseInfo *responseInfo = ad.responseInfo; NSLog(@"%@", responseInfo.description); }]; }
Informations sur la réponse
Voici un exemple de sortie montrant les données de débogage renvoyées pour une annonce chargée:
** Response Info **
Response ID: CLz5r-KMtfoCFQvv7QodfGAMHw
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.357
** 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.357
Les propriétés de GADResponseInfo
incluent:
Propriété | Description |
---|---|
adNetworkInfoArray |
Renvoie la liste des GADAdNetworkResponseInfo contenant des métadonnées pour chaque adaptateur inclus dans la réponse de l'annonce. Peut être utilisé pour déboguer la médiation de la cascade d'annonces et l'exécution 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 la section Informations sur la réponse de l'adaptateur. |
loadedAdNetworkResponseInfo |
Renvoie la GADAdNetworkResponseInfo correspondant à l'adaptateur qui a chargé l'annonce. |
adNetworkClassName |
Renvoie le nom de la classe de l'adaptateur de médiation du réseau publicitaire qui a chargé l'annonce. |
responseIdentifier |
L'identifiant de réponse est un identifiant unique de la réponse d'annonce. Cet identifiant peut être utilisé pour identifier et bloquer l'annonce dans le Centre de vérification des annonces. |
extrasDictionary |
Renvoie des informations supplémentaires sur la réponse de l'annonce. Les extras peuvent renvoyer les clés suivantes:
|
Swift
fileprivate func loadInterstitial() { GADInterstitialAd.load( withAdUnitID: "ca-app-pub-3940256099942544/4411468910", request: request ) { (ad, error) in let responseInfo = ad?.responseInfo let responseIdentifier = responseInfo?.responseIdentifier let adNetworkClassName = responseInfo?.adNetworkClassName let adNetworkInfoArray = responseInfo?.adNetworkInfoArray let loadedAdNetworkResponseInfo = responseInfo?.loadedAdNetworkResponseInfo let mediationGroupName = responseInfo?.extrasDictionary["mediation_group_name"] let mediationABTestName = responseInfo?.extrasDictionary["mediation_ab_test_name"] let mediationABTestVariant = responseInfo?.extrasDictionary["mediation_ab_test_variant"] } }
Objective-C
- (void)loadInterstitial { [GADInterstitialAd loadWithAdUnitID:@"ca-app-pub-3940256099942544/4411468910" request:request completionHandler:^(GADInterstitialAd *ad, NSError *error) { GADResponseInfo *responseInfo = ad.responseInfo; NSString *responseIdentifier = responseInfo.responseIdentifier; NSString *adNetworkClassName = responseInfo.adNetworkClassName; NSArray *adNetworkInfoArray = responseInfo.adNetworkInfoArray; GADAdNetworkResponseInfo *loadedAdNetworkResponseInfo = responseInfo.loadedAdNetworkResponseInfo; NSString *mediationGroupName = responseInfo.extrasDictionary[@"mediation_group_name"]; NSString *mediationABTestName = responseInfo.extrasDictionary[@"mediation_ab_test_name"]; NSString *mediationABTestVariant = responseInfo.extrasDictionary[@"mediation_ab_test_variant"]; }]; }
Informations sur la réponse de l'adaptateur
GADAdNetworkResponseInfo
contient des métadonnées pour chaque adaptateur inclus dans la réponse de l'annonce, qui peuvent être utilisées pour déboguer la médiation en cascade et l'exécution 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 sortie GADAdNetworkResponseInfo
:
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.277
Pour chaque réseau publicitaire, GADAdNetworkResponseInfo
fournit les propriétés suivantes:
Propriété | Description |
---|---|
error |
Erreur associée à la requête envoyée au réseau. Renvoie nil si le réseau a réussi à charger une annonce ou si le réseau n'a pas été tenté. |
adSourceId |
ID de la source d'annonces associé à cette réponse de l'adaptateur.
Pour les campagnes, 6060308706800320801 est renvoyé pour un type d'objectif de campagne pour les annonces par médiation, et 7068401028668408324 est renvoyé pour les types d'objectifs d'impression et de clic. Consultez Sources d'annonces pour obtenir la liste des ID de source d'annonces possibles lorsqu'un réseau publicitaire diffuse l'annonce. |
adSourceInstanceId |
ID d'instance de la source d'annonces associé à cette réponse de l'adaptateur. |
adSourceInstanceName |
Nom de l'instance de source d'annonces associée à cette réponse de l'adaptateur. |
adSourceName |
Source de l'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 pour les annonces par médiation, et Reservation Campaign est renvoyé pour les types d'objectifs d'impression et de clic. Consultez Sources d'annonces pour obtenir la liste des noms de sources d'annonces possibles lorsqu'un réseau publicitaire diffuse l'annonce. |
adNetworkClassName |
Nom de la classe de l'adaptateur de réseau publicitaire qui a chargé l'annonce. |
adUnitMapping |
Configuration réseau définie depuis l'interface utilisateur AdMob. |
latency |
Temps que le réseau publicitaire a passé à charger une annonce. Renvoie 0 si le réseau n'a pas été tenté. |
Swift
fileprivate func loadInterstitial() { GADInterstitialAd.load( withAdUnitID: "ca-app-pub-3940256099942544/4411468910", request: request ) { (ad, error) in let responseInfo = ad?.responseInfo let loadedAdNetworkResponseInfo = responseInfo?.loadedAdNetworkResponseInfo let adNetworkError = loadedAdNetworkResponseInfo?.error let adSourceId = loadedAdNetworkResponseInfo?.adSourceID let adSourceInstanceId = loadedAdNetworkResponseInfo?.adSourceInstanceID let adSourceInstanceName = loadedAdNetworkResponseInfo?.adSourceInstanceName let adSourceName = loadedAdNetworkResponseInfo?.adSourceName let adNetworkClassName = loadedAdNetworkResponseInfo?.adNetworkClassName let adUnitMapping = loadedAdNetworkResponseInfo?.adUnitMapping let latency = loadedAdNetworkResponseInfo?.latency } }
Objective-C
- (void)loadInterstitial { [GADInterstitialAd loadWithAdUnitID:@"ca-app-pub-3940256099942544/4411468910" request:request completionHandler:^(GADInterstitialAd *ad, NSError *error) { GADResponseInfo *responseInfo = ad.responseInfo; GADAdNetworkResponseInfo *loadedAdNetworkResponseInfo = responseInfo.loadedAdNetworkResponseInfo; NSError *adNetworkError = loadedAdNetworkResponseInfo.error; NSString *adSourceId = loadedAdNetworkResponseInfo.adSourceID; NSString *adSourceInstanceId = loadedAdNetworkResponseInfo.adSourceInstanceID; NSString *adSourceInstanceName = loadedAdNetworkResponseInfo.adSourceInstanceName; NSString *adSourceName = loadedAdNetworkResponseInfo.adSourceName; NSString *adNetworkClassName = loadedAdNetworkResponseInfo.adNetworkClassName; NSDictionary*adUnitMapping = loadedAdNetworkResponseInfo.adUnitMapping; NSTimeInterval latency = loadedAdNetworkResponseInfo.latency; }]; }