برای اهداف اشکالزدایی و ثبت گزارش، آگهیهای باموفقیت بارشده یک شیء
GADResponseInfo
ارائه میدهند. این شیء حاوی اطلاعاتی درباره آگهی بارشده است، علاوهبر
اطلاعاتی درباره آبشار میانجیگری استفادهشده برای بار کردن آگهی.
برای مواردی که آگهی با موفقیت بار میشود، شیء آگهی دارای یک
GADResponseInfo ویژگی است. برای مثال،
GADInterstitialAd.responseInfo
اطلاعات پاسخ را برای آگهی بینابینی بارشده دریافت میکند.
در مواردی که آگهیها بار نمیشوند و فقط خطا دردسترس است،
GADResponseInfo بااستفاده از کلید GADErrorUserInfoKeyResponseInfo
در فرهنگ لغت userInfo خطا دردسترس است.
Swift
fileprivate func loadInterstitial() { InterstitialAd.load( with: "ca-app-pub-3940256099942544/4411468910", request: request ) { (ad, error) in if let error = error { let responseInfo = (error as NSError).userInfo[GADErrorUserInfoKeyResponseInfo] as? ResponseInfo print("\(String(describing: responseInfo))") return } let responseInfo = ad?.responseInfo print("\(String(describing: responseInfo))") } }
آبجکتیو-سی
- (void)loadInterstitial { [GADInterstitialAd loadWithAdUnitID:@"ca-app-pub-3940256099942544/4411468910" request:request completionHandler:^(GADInterstitialAd *ad, NSError *error) { if (error) { GADResponseInfo *responseInfo = error.userInfo[GADErrorUserInfoKeyResponseInfo]; NSLog(@"%@", responseInfo.description); return; } GADResponseInfo *responseInfo = ad.responseInfo; NSLog(@"%@", responseInfo.description); }]; }
اطلاعات پاسخ
در اینجا نمونهای از خروجی نشان داده شده است که دادههای اشکالزدایی برگرداندهشده برای آگهی بارشده را نشان میدهد:
** Response Info **
Response ID: CLz5r-KMtfoCFQvv7QodfGAMHw
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.357
** 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.357
ویژگیهای GADResponseInfo
عبارتاند از:
| دارایی | شرح |
|---|---|
adNetworkInfoArray |
فهرست GADAdNetworkResponseInfo
را که حاوی فراداده برای هر آداپتور موجود در پاسخ آگهی است برمیگرداند. میتواند
برای اشکالزدایی میانجیگری آبشاری و اجرای پیشنهاد قیمت استفاده شود. ترتیب
فهرست با ترتیب آبشار میانجیگری برای این درخواست آگهی مطابقت دارد.
برای اطلاعات بیشتر، به اطلاعات پاسخ آداپتور مراجعه کنید. |
loadedAdNetworkResponseInfo |
GADAdNetworkResponseInfo مربوط به آداپتوری را که آگهی را بار کرده است برمیگرداند. |
adNetworkClassName |
نام کلاس آداپتور میانجیگری شبکه آگهی را که آگهی را بار کرده است برمیگرداند. |
responseIdentifier |
شناسه پاسخ، شناسه یکتایی برای پاسخ آگهی است. از این شناسه میتوان برای شناسایی و مسدود کردن آگهی در مرکز بازبینی آگهی استفاده کرد. |
extrasDictionary |
اطلاعات بیشتری درباره پاسخ آگهی برمیگرداند. Extras ممکن است کلیدهای زیر را برگرداند:
|
Swift
fileprivate func loadInterstitial() { InterstitialAd.load( with: "ca-app-pub-3940256099942544/4411468910", request: request ) { (ad, error) in let responseInfo = ad?.responseInfo let responseIdentifier = responseInfo?.responseIdentifier let adNetworkClassName = responseInfo?.adNetworkClassName let adNetworkInfoArray = responseInfo?.adNetworkInfoArray let loadedAdNetworkResponseInfo = responseInfo?.loadedAdNetworkResponseInfo let mediationGroupName = responseInfo?.extrasDictionary["mediation_group_name"] let mediationABTestName = responseInfo?.extrasDictionary["mediation_ab_test_name"] let mediationABTestVariant = responseInfo?.extrasDictionary["mediation_ab_test_variant"] } }
آبجکتیو-سی
- (void)loadInterstitial { [GADInterstitialAd loadWithAdUnitID:@"ca-app-pub-3940256099942544/4411468910" request:request completionHandler:^(GADInterstitialAd *ad, NSError *error) { GADResponseInfo *responseInfo = ad.responseInfo; NSString *responseIdentifier = responseInfo.responseIdentifier; NSString *adNetworkClassName = responseInfo.adNetworkClassName; NSArray *adNetworkInfoArray = responseInfo.adNetworkInfoArray; GADAdNetworkResponseInfo *loadedAdNetworkResponseInfo = responseInfo.loadedAdNetworkResponseInfo; NSString *mediationGroupName = responseInfo.extrasDictionary[@"mediation_group_name"]; NSString *mediationABTestName = responseInfo.extrasDictionary[@"mediation_ab_test_name"]; NSString *mediationABTestVariant = responseInfo.extrasDictionary[@"mediation_ab_test_variant"]; }]; }
اطلاعات پاسخ سازگارکننده
GADAdNetworkResponseInfo
حاوی فراداده برای هر آداپتور موجود در پاسخ آگهی است که میتواند برای اشکالزدایی میانجیگری آبشاری و اجرای پیشنهاد قیمت استفاده شود. ترتیب فهرست
با ترتیب آبشار میانجیگری برای درخواست آگهی مطابقت دارد.
در اینجا نمونه برونداد GADAdNetworkResponseInfo آورده شده است:
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.277
برای هر شبکه آگهی، GADAdNetworkResponseInfo ویژگیهای زیر را ارائه میدهد:
| دارایی | شرح |
|---|---|
error |
خطای مربوط به درخواست به شبکه. اگر شبکه آگهی را با موفقیت بار کرده باشد یا اگر شبکه
امتحان نشده باشد، nil را برمیگرداند. |
adSourceId |
شناسه منبع آگهی مرتبط با این پاسخ آداپتور.
برای پویشها، 6060308706800320801 برای
نوع هدف پویش آگهیهای میانجیگریشده برگردانده میشود،
و 7068401028668408324 برای انواع هدف ظهور و کلیک
برگردانده میشود. برای مشاهده فهرست شناسههای منبع آگهی احتمالی وقتی شبکه آگهی، آگهی را ارائه میکند، به منابع آگهی مراجعه کنید. |
adSourceInstanceId |
شناسه نمونه منبع آگهی مرتبط با این پاسخ آداپتور. |
adSourceInstanceName |
نام نمونه منبع آگهی مرتبط با این پاسخ آداپتور. |
adSourceName |
منبع آگهی که نشاندهنده شبکه آگهی خاصی است که ظهور را ارائه میدهد. برای پویشها،
Mediated House Ads برای آگهیهای میانجیگریشده
نوع هدف پویش برگردانده میشود،
و Reservation Campaign برای انواع هدف
ظهور و کلیک برگردانده میشود. برای مشاهده فهرست نامهای احتمالی منبع آگهی وقتی شبکه آگهی، آگهی را ارائه میدهد، به منابع آگهی مراجعه کنید. |
adNetworkClassName |
نام کلاس آداپتور شبکه آگهی که آگهی را بار کرده است. |
adUnitMapping |
پیکربندی شبکه از رابط کاربری AdMob تنظیم شده است. |
latency |
مدت زمانی که شبکه آگهی برای بار کردن آگهی صرف کرده است. اگر شبکه امتحان نشده باشد،
0 را برمیگرداند. |
Swift
fileprivate func loadInterstitial() { InterstitialAd.load( with: "ca-app-pub-3940256099942544/4411468910", request: request ) { (ad, error) in let responseInfo = ad?.responseInfo let loadedAdNetworkResponseInfo = responseInfo?.loadedAdNetworkResponseInfo let adNetworkError = loadedAdNetworkResponseInfo?.error let adSourceId = loadedAdNetworkResponseInfo?.adSourceID let adSourceInstanceId = loadedAdNetworkResponseInfo?.adSourceInstanceID let adSourceInstanceName = loadedAdNetworkResponseInfo?.adSourceInstanceName let adSourceName = loadedAdNetworkResponseInfo?.adSourceName let adNetworkClassName = loadedAdNetworkResponseInfo?.adNetworkClassName let adUnitMapping = loadedAdNetworkResponseInfo?.adUnitMapping let latency = loadedAdNetworkResponseInfo?.latency } }
آبجکتیو-سی
- (void)loadInterstitial { [GADInterstitialAd loadWithAdUnitID:@"ca-app-pub-3940256099942544/4411468910" request:request completionHandler:^(GADInterstitialAd *ad, NSError *error) { GADResponseInfo *responseInfo = ad.responseInfo; GADAdNetworkResponseInfo *loadedAdNetworkResponseInfo = responseInfo.loadedAdNetworkResponseInfo; NSError *adNetworkError = loadedAdNetworkResponseInfo.error; NSString *adSourceId = loadedAdNetworkResponseInfo.adSourceID; NSString *adSourceInstanceId = loadedAdNetworkResponseInfo.adSourceInstanceID; NSString *adSourceInstanceName = loadedAdNetworkResponseInfo.adSourceInstanceName; NSString *adSourceName = loadedAdNetworkResponseInfo.adSourceName; NSString *adNetworkClassName = loadedAdNetworkResponseInfo.adNetworkClassName; NSDictionary*adUnitMapping = loadedAdNetworkResponseInfo.adUnitMapping; NSTimeInterval latency = loadedAdNetworkResponseInfo.latency; }]; }