Para la depuración y el registro, los anuncios cargados de forma correcta proporcionan un objeto GADResponseInfo
. Este objeto contiene información sobre el anuncio que cargó, además de información sobre la cascada de mediación que se usó para cargar el anuncio.
En los casos en los que un anuncio se carga correctamente, el objeto de anuncio tiene una propiedad GADResponseInfo
. Por ejemplo, GADInterstitialAd.responseInfo
obtiene la información de respuesta de un anuncio intersticial cargado.
Para los casos en los que no se pueden cargar los anuncios y solo hay un error disponible, GADResponseInfo
está disponible mediante la clave GADErrorUserInfoKeyResponseInfo
en el diccionario userInfo
del error.
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); }]; }
Información de respuesta
A continuación, se muestra un resultado de muestra que muestra los datos de depuración mostrados para un anuncio cargado:
( ** 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
)
Las propiedades en GADResponseInfo
incluyen lo siguiente:
Propiedad | Descripción |
---|---|
adNetworkInfoArray |
Muestra la lista de GADAdNetworkResponseInfo que contiene los metadatos para cada adaptador incluido en la respuesta del anuncio. Se puede usar para depurar la mediación en cascada y la ejecución de ofertas. El orden de la lista coincide con el orden de la cascada de mediación para esta solicitud de anuncio.
Consulta Información de respuesta del adaptador para obtener más información. |
loadedAdNetworkResponseInfo |
Muestra el GADAdNetworkResponseInfo correspondiente al adaptador que cargó el anuncio. |
adNetworkClassName |
Muestra el nombre de clase del adaptador de mediación de la red de publicidad que cargó el anuncio. |
responseIdentifier |
El identificador de respuesta es un identificador único para la respuesta del anuncio. Este identificador se puede utilizar para identificar y bloquear el anuncio en el Centro de revisión de anuncios (ARC). |
extrasDictionary |
Muestra información adicional sobre la respuesta del anuncio. Es posible que los campos adicionales muestren las siguientes claves:
|
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"]; }]; }
Información de respuesta del adaptador
GADAdNetworkResponseInfo
contiene metadatos para cada adaptador incluido en la respuesta del anuncio que se pueden usar a fin de depurar la mediación en cascada y la ejecución de ofertas. El orden de la lista coincide con el orden de la cascada de mediación para la solicitud de anuncio.
Aquí hay un resultado de muestra de 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
)
Para cada red de publicidad, GADAdNetworkResponseInfo
proporciona las siguientes propiedades:
Propiedad | Descripción |
---|---|
error |
El error asociado con la solicitud a la red. Muestra nil si la red cargó un anuncio de forma correcta o si no se intentó la red. |
adSourceId |
Es el ID de la fuente del anuncio asociado con esta respuesta del adaptador.En el caso de las campañas, se muestra 6060308706800320801 para un tipo de objetivo de campaña de anuncios mediados y 7068401028668408324 para los tipos de objetivo de impresiones y clics. Consulta Fuentes del anuncio para ver la lista de posibles ID de la fuente del anuncio cuando una red de publicidad publica el anuncio. |
adSourceInstanceId |
Es el ID de la instancia de fuente del anuncio asociado con esta respuesta del adaptador. |
adSourceInstanceName |
Es el nombre de la instancia de fuente del anuncio asociado con esta respuesta del adaptador. |
adSourceName |
La fuente del anuncio que representa la red de publicidad específica que publica las impresiones. En el caso de las campañas, se muestra Mediated House Ads para los anuncios mediados. El tipo de objetivo de la campaña y los Reservation Campaign se muestran para los tipos de objetivos de impresiones y clics. Consulta Fuentes del anuncio para ver la lista de posibles nombres de fuentes del anuncio cuando una red de publicidad publica el anuncio. |
adNetworkClassName |
Es el nombre de clase del adaptador de red de publicidad que cargó el anuncio. |
adUnitMapping |
La configuración de red establecida en la IU de AdMob . |
latency |
Es la cantidad de tiempo que la red de publicidad pasó cargando un anuncio. Muestra 0 si no se intentó la red. |
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; }]; }