Để gỡ lỗi và ghi nhật ký, quảng cáo đã tải thành công sẽ cung cấp đối tượng
ResponseInfo
. Đối tượng này chứa thông tin về quảng cáo đã tải,
ngoài thông tin về quy trình dàn xếp kiểu thác nước được dùng để tải quảng cáo.
Trong trường hợp một quảng cáo tải thành công, đối tượng quảng cáo sẽ sử dụng phương thức
GetResponseInfo()
. Ví dụ: InterstitialAd.GetResponseInfo()
nhận thông tin phản hồi cho một quảng cáo xen kẽ đã tải.
Trong trường hợp quảng cáo không tải được và chỉ có một lỗi, bạn có thể xem thông tin
phản hồi thông qua
AdFailedToLoadEventArgs.LoadAdError.GetResponseInfo()
.
InterstitialAd ad;
private void RequestInterstitial()
{
ad = new InterstitialAd("AD_UNIT_ID");
this.interstitial.OnAdLoaded += OnAdLoaded;
this.interstitial.OnAdFailedToLoad += HandleOnAdFailedToLoad;
AdRequest request = new AdRequest.Builder().Build();
this.interstitial.LoadAd(request);
}
private void OnAdLoaded(object sender, EventArgs args)
{
ResponseInfo info = ad.GetResponseInfo();
}
private void OnAdFailedToLoad(object sender, AdFailedToLoadEventArgs args)
{
ResponseInfo info = args.LoadAdError.GetResponseInfo();
}
Thông tin phản hồi
Dưới đây là kết quả mẫu do ResponseInfo.ToString()
trả về, thể hiện dữ liệu gỡ lỗi được trả về cho một quảng cáo đã tải:
Android
{ "Response ID": "COOllLGxlPoCFdAx4Aod-Q4A0g", "Mediation Adapter Class Name": "com.google.ads.mediation.admob.AdMobAdapter", "Adapter Responses": [ { "Adapter": "com.google.ads.mediation.admob.AdMobAdapter", "Latency": 328, "Ad Source Name": "Reservation campaign", "Ad Source ID": "7068401028668408324", "Ad Source Instance Name": "[DO NOT EDIT] Publisher Test Interstitial", "Ad Source Instance ID": "4665218928925097", "Credentials": {}, "Ad Error": "null" } ], "Loaded Adapter Response": { "Adapter": "com.google.ads.mediation.admob.AdMobAdapter", "Latency": 328, "Ad Source Name": "Reservation campaign", "Ad Source ID": "7068401028668408324", "Ad Source Instance Name": "[DO NOT EDIT] Publisher Test Interstitial", "Ad Source Instance ID": "4665218928925097", "Credentials": {}, "Ad Error": "null" }, "Response Extras": { "mediation_group_name": "Campaign" } }
iOS
** Response Info ** Response ID: CIzs0ZO5kPoCFRqWAAAdJMINpQ 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.391 ** 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.391
Các phương thức trên đối tượng ResponseInfo
bao gồm:
Phương thức | Nội dung mô tả |
---|---|
GetAdapterResponses |
Trả về danh sách AdapterResponseInfo chứa siêu dữ liệu
cho từng bộ chuyển đổi có trong nội dung phản hồi quảng cáo. Bạn có thể sử dụng danh sách này để gỡ lỗi
cách thực thi đặt giá thầu và dàn xếp kiểu thác nước. Thứ tự của danh sách này khớp với
thứ tự của quy trình dàn xếp kiểu thác nước cho yêu cầu quảng cáo này.
Hãy xem bài viết Thông tin phản hồi của bộ chuyển đổi để biết thêm thông tin. |
GetLoadedAdapterResponseInfo |
Trả về AdapterResponseInfo tương ứng với bộ chuyển đổi
đã tải quảng cáo. |
GetMediationAdapterClassName |
Trả về tên lớp bộ chuyển đổi dàn xếp của mạng quảng cáo đã tải quảng cáo. |
GetResponseId |
Giá trị nhận dạng nội dung phản hồi là giá trị nhận dạng riêng biệt của nội dung phản hồi quảng cáo. Giá trị nhận dạng này có thể được dùng để xác định và chặn quảng cáo trong Trung tâm xem xét quảng cáo (ARC). |
GetResponseExtras |
Trả về thông tin bổ sung về nội dung phản hồi quảng cáo. Dữ liệu bổ sung có thể trả về các khoá sau:
|
Dưới đây là ví dụ về các giá trị đọc của một ResponseInfo
đã tải:
private void OnAdLoaded(object sender, EventArgs args)
{
ResponseInfo info = ad.GetResponseInfo();
string responseId = responseInfo.GetResponseId();
string mediationAdapterClassName = responseInfo.GetMediationAdapterClassName();
List<AdapterResponseInfo> adapterResponses = responseInfo.GetAdapterResponses();
AdapterResponseInfo loadedAdapterResponseInfo = responseInfo.GetLoadedAdapterResponseInfo();
Dictionary<string, string> extras = responseInfo.GetResponseExtras();
string mediationGroupName = extras["mediation_group_name"];
string mediationABTestName = extras["mediation_ab_test_name"];
string mediationABTestVariant = extras["mediation_ab_test_variant"];
}
Thông tin phản hồi của bộ chuyển đổi
AdapterResponseInfo
chứa siêu dữ liệu cho từng bộ chuyển đổi có trong phản hồi
quảng cáo. Bạn có thể sử dụng siêu dữ liệu này để gỡ lỗi cho quy trình thực thi
đặt giá thầu và dàn xếp kiểu thác nước. Thứ tự của danh sách này khớp với thứ tự của quy trình dàn xếp kiểu thác nước
cho yêu cầu quảng cáo.
Dưới đây là kết quả mẫu do AdapterResponseInfo
trả về:
Android
{ "Adapter": "com.google.ads.mediation.admob.AdMobAdapter", "Latency": 328, "Ad Source Name": "Reservation campaign", "Ad Source ID": "7068401028668408324", "Ad Source Instance Name": "[DO NOT EDIT] Publisher Test Interstitial", "Ad Source Instance ID": "4665218928925097", "Credentials": {}, "Ad Error": "null" }
iOS
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.391
Đối với mỗi mạng quảng cáo, AdapterResponseInfo
cung cấp các phương thức sau:
Phương thức | Nội dung mô tả |
---|---|
AdError |
Xem lỗi liên quan đến yêu cầu gửi đến mạng. Trả về
null nếu mạng đã tải quảng cáo thành công hoặc nếu
mạng chưa thử tải quảng cáo. |
AdSourceId |
Xem mã nguồn quảng cáo liên kết với nội dung phản hồi của bộ chuyển đổi này. Đối với chiến dịch,
6060308706800320801 được trả về cho
loại mục tiêu chiến dịch của quảng cáo đã dàn xếp,
còn 7068401028668408324 được trả về cho các loại mục tiêu lượt hiển thị và lượt nhấp. Hãy xem phần Nguồn quảng cáo
để biết danh sách mã nguồn quảng cáo có thể có khi một mạng quảng cáo phân phát quảng cáo. |
AdSourceInstanceId |
Xem mã bản sao nguồn quảng cáo liên kết với nội dung phản hồi của bộ chuyển đổi này. |
AdSourceInstanceName |
Xem tên phiên bản nguồn quảng cáo được liên kết với nội dung phản hồi của bộ chuyển đổi này. |
AdSourceName |
Xem nguồn quảng cáo đại diện cho mạng quảng cáo cụ thể phân phát
lượt hiển thị. Đối với chiến dịch,
Mediated House Ads được trả về cho
loại mục tiêu chiến dịch của quảng cáo đã dàn xếp,
còn Reservation Campaign được trả về cho các loại mục tiêu lượt hiển thị và lượt nhấp. Bạn có thể xem phần Nguồn quảng cáo
để biết danh sách tên nguồn quảng cáo có thể có khi một mạng quảng cáo phân phát
quảng cáo. |
AdapterClassName |
Lấy tên lớp giúp xác định mạng quảng cáo. |
AdUnitMapping |
Lấy cấu hình mạng được đặt từ giao diện người dùng AdMob. |
LatencyMillis |
Xem lượng thời gian cần để mạng quảng cáo tải quảng cáo.
Trả về 0 nếu mạng chưa thử tải quảng cáo. |
Dưới đây là ví dụ về các giá trị đọc của một AdapterResponseInfo
đã tải:
private void OnAdLoaded(object sender, EventArgs args)
{
ResponseInfo responseInfo = ad.GetResponseInfo();
AdapterResponseInfo loadedAdapterResponseInfo = responseInfo.getLoadedAdapterResponseInfo();
AdError adError = loadedAdapterResponseInfo.AdError;
string adSourceId = loadedAdapterResponseInfo.AdSourceId;
string adSourceInstanceId = loadedAdapterResponseInfo.AdSourceInstanceId;
string adSourceInstanceName = loadedAdapterResponseInfo.AdSourceInstanceName;
string adSourceName = loadedAdapterResponseInfo.AdSourceName;
string adapterClassName = loadedAdapterResponseInfo.AdapterClassName;
Dictionary<string, string> credentials = loadedAdapterResponseInfo.AdUnitMapping;
long latencyMillis = loadedAdapterResponseInfo.LatencyMillis;
}