Po wczytaniu reklamy lub niepowodzeniu wczytywania sprawdź obiekt ResponseInfo. Ten obiekt zawiera szczegółowe informacje o załadowanej reklamie i metadane dotyczące kaskady zapośredniczenia użytej do przetworzenia żądania.
Jeśli reklama zostanie wczytana, jej wystąpienie zawiera metodę getResponseInfo. Na przykład metoda interstitialAd.getResponseInfo zwraca informacje o odpowiedzi dla wczytanego obiektu InterstitialAd.
Jeśli reklama nie wczyta się, uzyskaj dostęp do opcjonalnej właściwości responseInfo w obiekcie LoadAdError, np. error.responseInfo.
Sprawdzanie obiektu informacji o odpowiedzi
Obiekt ResponseInfo zawiera szczegółowe informacje diagnostyczne zwrócone w odpowiedzi na żądanie reklamy.
Poniższy przykład pokazuje dane wyjściowe z informacjami o odpowiedzi dla wczytanej reklamy:
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
}
]
}
Obiekt ResponseInfo udostępnia te właściwości:
| Właściwość | Typ | Opis |
|---|---|---|
adSourceResponses |
readonly AdSourceResponseInfo[] |
Lista obiektów AdSourceResponseInfo reprezentujących każdą próbę źródła reklam w kaskadzie zapośredniczenia. |
loadedAdSourceResponseInfo |
AdSourceResponseInfo | undefined |
Metadane adaptera źródła reklam, który wczytał reklamę. Jeśli reklama się nie wczytała, ta wartość wynosi undefined. |
responseExtras |
Readonly<Record<string, unknown>> |
Dodatkowe metadane zwracane przez odpowiedź na reklamę, takie jak klucz mediation_group_name. |
responseId |
string |
Unikalny identyfikator odpowiedzi na reklamę. Użyj tego identyfikatora, aby zidentyfikować blokowane reklamy w Centrum oceny reklam. |
Odczytywanie informacji o odpowiedzi źródła reklam
Obiekt AdSourceResponseInfo zawiera metadane adaptera uwzględnionego w odpowiedzi na żądanie reklamy. Te obiekty są wymienione w kolejności wywoływania poszczególnych źródeł reklam w kaskadzie zapośredniczenia.
Poniższy przykład pokazuje dane wyjściowe informacji o odpowiedzi źródła reklam w przypadku wczytanej reklamy:
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
}
W przypadku każdego źródła reklam AdSourceResponseInfo podaje te właściwości:
| Właściwość | Typ | Opis |
|---|---|---|
adapterClassName |
string |
Nazwa klasy adaptera sieci reklamowej. |
credentials |
Readonly<Record<string, string>> |
Parametry po stronie serwera skonfigurowane w interfejsie AdMob dla tego adaptera. |
id |
string |
Unikalny identyfikator źródła reklam. |
instanceId |
string |
Unikalny identyfikator wystąpienia źródła reklam. |
instanceName |
string |
Nazwa instancji źródła reklam. |
latencyMillis |
number |
Czas w milisekundach potrzebny na próbę połączenia z siecią. |
mediationAdError |
MediationAdError | undefined |
Jeśli próba połączenia z siecią się nie powiodła, ta właściwość opisuje błąd. Jeśli operacja się powiedzie, ta wartość to undefined. |
name |
string |
Nazwa źródła reklam, np. "Reservation campaign". |
Zapisz w logu pełne informacje o odpowiedzi
W tej sekcji opisano implementację, która umożliwia sprawdzenie pełnych informacji o odpowiedzi dotyczącej wczytanej reklamy.
Poniższy przykład rejestruje i sprawdza informacje o odpowiedzi, gdy reklama się wczytuje lub nie udaje się jej wczytać:
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);
}
}
}
}