Nachdem eine Anzeige geladen wurde oder nicht geladen werden konnte, prüfen Sie das ResponseInfo-Objekt. Dieses Objekt enthält Details zur geladenen Anzeige und Metadaten zur Vermittlungsabfolge, die zur Verarbeitung der Anfrage verwendet wurde.
Wenn eine Anzeige erfolgreich geladen wurde, enthält die Anzeigeninstanz eine getResponseInfo-Methode. Die Methode interstitialAd.getResponseInfo gibt beispielsweise die Antwortinformationen für ein geladenes InterstitialAd-Objekt zurück.
Wenn eine Anzeige nicht geladen werden kann, greifen Sie auf die optionale Property responseInfo im LoadAdError-Objekt zu, z. B. error.responseInfo.
Antwortinfoobjekt prüfen
Das Objekt ResponseInfo enthält Diagnosedetails, die von einer Anzeigenanfrage zurückgegeben werden.
Im folgenden Beispiel sehen Sie die Ausgabe der Antwortinformationen für eine geladene Anzeige:
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
}
]
}
Das ResponseInfo-Objekt umfasst folgende Eigenschaften:
| Attribut | Typ | Beschreibung |
|---|---|---|
adSourceResponses |
readonly AdSourceResponseInfo[] |
Eine Liste von AdSourceResponseInfo-Objekten, die jeden Versuch einer Anzeigenquelle in der Vermittlungsabfolge darstellen. |
loadedAdSourceResponseInfo |
AdSourceResponseInfo | undefined |
Metadaten für den Adapter der Anzeigenquelle, über den die Anzeige geladen wurde. Wenn die Anzeige nicht geladen wurde, ist dieser Wert undefined. |
responseExtras |
Readonly<Record<string, unknown>> |
Zusätzliche Metadaten, die die Anzeigenantwort zurückgibt, z. B. den Schlüssel mediation_group_name. |
responseId |
string |
Eine eindeutige Kennung für die Anzeigenantwort. Mit dieser ID können Sie blockierende Anzeigen im Überprüfungszentrum für Anzeigen identifizieren. |
Informationen zur Antwort der Anzeigenquelle lesen
Das Objekt AdSourceResponseInfo stellt Metadaten für einen Adapter bereit, der in der Anzeigenantwort enthalten ist. Diese Objekte werden in der Aufrufreihenfolge der einzelnen Anzeigenquellen in der Vermittlungsabfolge aufgeführt.
Im folgenden Beispiel sehen Sie die Ausgabe der Antwortinformationen der Anzeigenquelle für eine geladene Anzeige:
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
}
Für jede Anzeigenquelle stellt AdSourceResponseInfo die folgenden Properties bereit:
| Attribut | Typ | Beschreibung |
|---|---|---|
adapterClassName |
string |
Der Klassenname des Adapters für das Werbenetzwerk. |
credentials |
Readonly<Record<string, string>> |
Serverseitige Parameter, die in der AdMob-Benutzeroberfläche für diesen Adapter konfiguriert sind. |
id |
string |
Die eindeutige ID der Anzeigenquelle. |
instanceId |
string |
Die eindeutige ID der Anzeigenquelleninstanz. |
instanceName |
string |
Der Name der Anzeigenquelleninstanz. |
latencyMillis |
number |
Die Zeit in Millisekunden, die für den Netzwerkversuch benötigt wurde. |
mediationAdError |
MediationAdError | undefined |
Wenn der Netzwerkversuch fehlgeschlagen ist, wird der Fehler in diesem Attribut beschrieben. Wenn der Vorgang erfolgreich war, ist dieser Wert undefined. |
name |
string |
Der Name der Anzeigenquelle, z. B. "Reservation campaign". |
Vollständige Antwortinformationen protokollieren
In diesem Abschnitt wird eine Implementierung beschrieben, mit der die vollständigen Antwortinformationen für eine geladene Anzeige geprüft werden können.
Im folgenden Beispiel werden die Antwortinformationen protokolliert und geprüft, wenn eine Anzeige geladen wird oder nicht geladen werden kann:
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);
}
}
}
}