Después de que un anuncio se cargue o no, inspecciona el objeto ResponseInfo. Este objeto detalla el anuncio cargado y los metadatos sobre la cascada de mediación que se usó para procesar la solicitud.
Si un anuncio se carga correctamente, la instancia del anuncio contiene un método getResponseInfo. Por ejemplo, el método interstitialAd.getResponseInfo devuelve la información de la respuesta de un objeto InterstitialAd cargado.
Si un anuncio no se carga, accede a la propiedad opcional responseInfo en el objeto LoadAdError, por ejemplo, error.responseInfo.
Inspecciona el objeto de información de la respuesta
El objeto ResponseInfo proporciona detalles de diagnóstico que se devuelven de una solicitud de anuncio.
En el siguiente ejemplo, se muestra el resultado de la información de respuesta de un anuncio cargado:
Android
{
"responseId": "COOllLGxlPoCFdAx4Aod-Q4A0g",
"responseExtras": {},
"loadedAdSourceResponseInfo": {
"adapterClassName": "com.google.ads.mediation.admob.AdMobAdapter",
"latencyMillis": 328,
"name": "Reservation campaign",
"id": "7068401028668408324",
"instanceName": "[DO NOT EDIT] Publisher Test Interstitial",
"instanceId": "4665218928925097",
"credentials": {},
"mediationAdError": null
},
"adSourceResponses": [
{
"adapterClassName": "com.google.ads.mediation.admob.AdMobAdapter",
"latencyMillis": 328,
"name": "Reservation campaign",
"id": "7068401028668408324",
"instanceName": "[DO NOT EDIT] Publisher Test Interstitial",
"instanceId": "4665218928925097",
"credentials": {},
"mediationAdError": null
}
]
}
iOS
{
"responseId": "COOllLGxlPoCFdAx4Aod-Q4A0g",
"responseExtras": {},
"loadedAdSourceResponseInfo": {
"adapterClassName": "GADMAdapterGoogleAdMobAds",
"latencyMillis": 328,
"name": "Reservation campaign",
"id": "7068401028668408324",
"instanceName": "[DO NOT EDIT] Publisher Test Interstitial",
"instanceId": "4665218928925097",
"credentials": {},
"mediationAdError": null
},
"adSourceResponses": [
{
"adapterClassName": "GADMAdapterGoogleAdMobAds",
"latencyMillis": 328,
"name": "Reservation campaign",
"id": "7068401028668408324",
"instanceName": "[DO NOT EDIT] Publisher Test Interstitial",
"instanceId": "4665218928925097",
"credentials": {},
"mediationAdError": null
}
]
}
El objeto ResponseInfo proporciona las siguientes propiedades:
| Propiedad | Tipo | Descripción |
|---|---|---|
adSourceResponses |
readonly AdSourceResponseInfo[] |
Es una lista de objetos AdSourceResponseInfo que representan cada intento de fuente de anuncios en la cascada de mediación. |
loadedAdSourceResponseInfo |
AdSourceResponseInfo | undefined |
Son los metadatos del adaptador de fuente de anuncios que cargó el anuncio correctamente. Si el anuncio no se cargó, este valor es undefined. |
responseExtras |
Readonly<Record<string, unknown>> |
Son los metadatos adicionales que devuelve la respuesta de solicitud de anuncio, como la clave mediation_group_name. |
responseId |
string |
Es un identificador único para la respuesta de solicitud de anuncio. Usa este ID para identificar los anuncios que se deben bloquear en el Centro de revisión de anuncios (ARC). |
Lee la información de la respuesta de la fuente de anuncios
El objeto AdSourceResponseInfo proporciona metadatos para un adaptador incluido en la respuesta de solicitud de anuncio. Estos objetos se enumeran en el orden de llamada de cada fuente de anuncios en la cascada de mediación.
En el siguiente ejemplo, se muestra el resultado de la información de respuesta de la fuente de anuncios para un anuncio cargado:
Android
{
"adapterClassName": "com.google.ads.mediation.admob.AdMobAdapter",
"latencyMillis": 328,
"name": "Reservation campaign",
"id": "7068401028668408324",
"instanceName": "[DO NOT EDIT] Publisher Test Interstitial",
"instanceId": "4665218928925097",
"credentials": {},
"mediationAdError": null
}
iOS
{
"adapterClassName": "GADMAdapterGoogleAdMobAds",
"latencyMillis": 328,
"name": "Reservation campaign",
"id": "7068401028668408324",
"instanceName": "[DO NOT EDIT] Publisher Test Interstitial",
"instanceId": "4665218928925097",
"credentials": {},
"mediationAdError": null
}
Para cada fuente de anuncios, AdSourceResponseInfo proporciona las siguientes propiedades:
| Propiedad | Tipo | Descripción |
|---|---|---|
adapterClassName |
string |
Es el nombre de la clase del adaptador de la red de publicidad. |
credentials |
Readonly<Record<string, string>> |
Son los parámetros del servidor que se configuraron en la IU de AdMob para este adaptador. |
id |
string |
Es el ID único de la fuente de anuncios. |
instanceId |
string |
Es el ID único de la instancia de fuente de anuncios. |
instanceName |
string |
Es el nombre de la instancia de la fuente de anuncios. |
latencyMillis |
number |
Es el tiempo en milisegundos que tardó el intento de conexión de red. |
mediationAdError |
MediationAdError | undefined |
Si el intento de conexión de red falló, esta propiedad describe el error. Si se realiza correctamente, este valor es undefined. |
name |
string |
Es el nombre de la fuente de anuncios, por ejemplo, "Reservation campaign". |
Registra la información completa de la respuesta
En esta sección, se explica cómo implementar la inspección de la información completa de la respuesta de un anuncio cargado.
En el siguiente ejemplo, se registra y se inspecciona la información de respuesta cuando un anuncio se carga o no se carga:
import {InterstitialAd, LoadAdError} from '@google/mobile-ads';
import type {AdSourceResponseInfo, ResponseInfo} from '@google/mobile-ads';
export async function logResponseInfo(adUnitId: string): Promise<void> {
try {
const interstitial = await InterstitialAd.load({adUnitId});
const responseInfo: ResponseInfo = interstitial.getResponseInfo();
console.log('Ad Loaded Response ID:', responseInfo.responseId);
console.log(
'Loaded Adapter Class Name:',
responseInfo.loadedAdSourceResponseInfo?.adapterClassName,
);
// Inspect each ad source response in the mediation waterfall
responseInfo.adSourceResponses.forEach(
(adSourceResponse: AdSourceResponseInfo, index: number) => {
console.log(
`Waterfall index ${index}:`,
adSourceResponse.adapterClassName,
`Latency: ${adSourceResponse.latencyMillis}ms`,
adSourceResponse.mediationAdError
? `Error: ${adSourceResponse.mediationAdError.message}`
: 'Success',
);
},
);
} catch (error) {
if (error instanceof LoadAdError) {
console.error('Ad failed to load:', error.message);
if (error.responseInfo) {
console.log('Failed Response ID:', error.responseInfo.responseId);
}
}
}
}