برای اهداف اشکال زدایی و ورود به سیستم، تبلیغات با موفقیت بارگذاری شده یک شی GADResponseInfo
را ارائه می دهند. این شیء حاوی اطلاعاتی در مورد تبلیغی است که بارگذاری کرده است، علاوه بر اطلاعات مربوط به آبشار میانجی که برای بارگذاری آگهی استفاده شده است.
برای مواردی که تبلیغ با موفقیت بارگیری می شود، شیء تبلیغ دارای ویژگی GADResponseInfo
است. به عنوان مثال، GADInterstitialAd.responseInfo
اطلاعات پاسخ را برای یک آگهی بینابینی بارگذاری شده دریافت می کند.
برای مواردی که آگهیها بارگیری نمیشوند و فقط یک خطا در دسترس است، GADResponseInfo
با استفاده از کلید GADErrorUserInfoKeyResponseInfo
در فرهنگ لغت userInfo
خطا در دسترس است.
سویفت
fileprivate func loadInterstitial() { GADInterstitialAd.load( withAdUnitID: "ca-app-pub-3940256099942544/4411468910", request: request ) { (ad, error) in if let error = error { let responseInfo = (error as NSError).userInfo[GADErrorUserInfoKeyResponseInfo] as? GADResponseInfo print("\(String(describing: responseInfo))") return } let responseInfo = ad?.responseInfo print("\(String(describing: responseInfo))") } }
هدف-C
- (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 | شناسه پاسخ یک شناسه منحصر به فرد برای پاسخ آگهی است. از این شناسه می توان برای شناسایی و مسدود کردن آگهی در مرکز بررسی تبلیغات (ARC) استفاده کرد. |
extrasDictionary | اطلاعات اضافی درباره پاسخ آگهی را برمی گرداند. Extras ممکن است کلیدهای زیر را برگرداند:
|
سویفت
fileprivate func loadInterstitial() { GADInterstitialAd.load( withAdUnitID: "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"] } }
هدف-C
- (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 UI. |
latency | مدت زمانی که شبکه تبلیغاتی صرف بارگذاری یک آگهی کرده است. در صورت عدم تلاش برای شبکه، 0 را برمی گرداند. |
سویفت
fileprivate func loadInterstitial() { GADInterstitialAd.load( withAdUnitID: "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 } }
هدف-C
- (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; }]; }