หลังจากโฆษณาโหลดหรือโหลดไม่สำเร็จ ให้ตรวจสอบออบเจ็กต์ ResponseInfo ออบเจ็กต์นี้จะแสดงรายละเอียดโฆษณาที่โหลดและข้อมูลเมตาเกี่ยวกับการแสดงโฆษณาสื่อกลางตามลำดับขั้นที่ใช้ในการประมวลผลคำขอ
หากโหลดโฆษณาสำเร็จ อินสแตนซ์โฆษณาจะมีเมธอด getResponseInfo เช่น เมธอด interstitialAd.getResponseInfo จะแสดงผลข้อมูลการตอบกลับสำหรับออบเจ็กต์ InterstitialAd ที่โหลด
หากโหลดโฆษณาไม่สำเร็จ ให้เข้าถึงพร็อพเพอร์ตี้ responseInfo ที่ไม่บังคับในออบเจ็กต์ LoadAdError เช่น error.responseInfo
ตรวจสอบออบเจ็กต์ข้อมูลการตอบกลับ
ออบเจ็กต์ ResponseInfo จะแสดงรายละเอียดการวินิจฉัยที่ได้จากคำขอโฆษณา
ตัวอย่างต่อไปนี้แสดงเอาต์พุตข้อมูลการตอบกลับสำหรับโฆษณาที่โหลด
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
}
]
}
ออบเจ็กต์ ResponseInfo มีพร็อพเพอร์ตี้ต่อไปนี้
| พร็อพเพอร์ตี้ | ประเภท | คำอธิบาย |
|---|---|---|
adSourceResponses |
readonly AdSourceResponseInfo[] |
รายการออบเจ็กต์ AdSourceResponseInfo รายการที่แสดงการพยายามเรียกใช้แหล่งที่มาของโฆษณาแต่ละแหล่งในการแสดงโฆษณาสื่อกลางตามลำดับขั้น |
loadedAdSourceResponseInfo |
AdSourceResponseInfo | undefined |
ข้อมูลเมตาของอะแดปเตอร์แหล่งที่มาของโฆษณาที่โหลดโฆษณาสำเร็จ หากโฆษณาไม่โหลด ค่านี้จะเป็น undefined |
responseExtras |
Readonly<Record<string, unknown>> |
ข้อมูลเมตาเพิ่มเติมที่การตอบกลับโฆษณาส่งกลับมา เช่น คีย์ mediation_group_name |
responseId |
string |
ตัวระบุที่ไม่ซ้ำกันสำหรับการตอบกลับโฆษณา ใช้รหัสนี้เพื่อระบุโฆษณาที่บล็อกในศูนย์ตรวจสอบโฆษณา (ARC) |
อ่านข้อมูลการตอบกลับของแหล่งที่มาของโฆษณา
ออบเจ็กต์ AdSourceResponseInfo จะให้ข้อมูลเมตาสำหรับอะแดปเตอร์ที่รวมอยู่ในการตอบกลับของโฆษณา ออบเจ็กต์เหล่านี้จะแสดงตามลำดับการเรียกใช้แหล่งที่มาของโฆษณาแต่ละแหล่งในการแสดงโฆษณาสื่อกลางตามลำดับขั้น
ตัวอย่างต่อไปนี้แสดงเอาต์พุตข้อมูลการตอบกลับของแหล่งที่มาของโฆษณาสำหรับโฆษณาที่โหลด
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
}
AdSourceResponseInfo จะระบุพร็อพเพอร์ตี้ต่อไปนี้สำหรับแหล่งที่มาของโฆษณาแต่ละแหล่ง
| พร็อพเพอร์ตี้ | ประเภท | คำอธิบาย |
|---|---|---|
adapterClassName |
string |
ชื่อคลาสของอะแดปเตอร์เครือข่ายโฆษณา |
credentials |
Readonly<Record<string, string>> |
พารามิเตอร์ฝั่งเซิร์ฟเวอร์ที่กำหนดค่าไว้ใน UI ของ AdMob สำหรับอะแดปเตอร์นี้ |
id |
string |
รหัสที่ไม่ซ้ำกันของแหล่งที่มาของโฆษณา |
instanceId |
string |
รหัสที่ไม่ซ้ำกันของอินสแตนซ์แหล่งที่มาของโฆษณา |
instanceName |
string |
ชื่ออินสแตนซ์ของแหล่งที่มาของโฆษณา |
latencyMillis |
number |
เวลาเป็นมิลลิวินาทีที่ใช้ในการพยายามเชื่อมต่อเครือข่าย |
mediationAdError |
MediationAdError | undefined |
หากการพยายามเชื่อมต่อเครือข่ายไม่สำเร็จ พร็อพเพอร์ตี้นี้จะอธิบายข้อผิดพลาด หากสำเร็จ ค่านี้จะเป็น undefined |
name |
string |
ชื่อแหล่งที่มาของโฆษณา เช่น "Reservation campaign" |
บันทึกข้อมูลการตอบกลับแบบเต็ม
ส่วนนี้ครอบคลุมการติดตั้งใช้งานเพื่อตรวจสอบข้อมูลการตอบกลับทั้งหมดสำหรับโฆษณาที่โหลด
ตัวอย่างต่อไปนี้จะบันทึกและตรวจสอบข้อมูลการตอบกลับเมื่อโฆษณาโหลดหรือโหลดไม่สำเร็จ
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);
}
}
}
}