لأغراض تصحيح الأخطاء وتسجيلها، تقدّم الإعلانات التي تم تحميلها بنجاح عنصر
GADResponseInfo. يحتوي هذا العنصر على معلومات عن الإعلان الذي تم تحميله، بالإضافة إلى معلومات عن تدفق التوسط المستخدَم لتحميل الإعلان.
في الحالات التي يتم فيها تحميل الإعلان بنجاح، يحتوي عنصر الإعلان على السمة GADResponseInfo. على سبيل المثال،
GADInterstitialAd.responseInfo
يحصل على معلومات الاستجابة الخاصة بإعلان بيني تم تحميله.
في الحالات التي يتعذّر فيها تحميل الإعلانات ويتوفّر خطأ فقط، يتوفّر
GADResponseInfo باستخدام المفتاح GADErrorUserInfoKeyResponseInfo
في قاموس userInfo الخاص بالخطأ.
Swift
fileprivate func loadInterstitial() { AdManagerInterstitialAd.load( with: "/21775744923/example/interstitial", 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))") } }
Objective-C
- (void)loadInterstitial { [GADInterstitialAd loadWithAdUnitID:@"/21775744923/example/interstitial" 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: BmnCZaSbE_6Mur8P5su8gAY
Network: GADMAdapterGoogleAdMobAds
** Loaded Adapter Response **
Network: GADMAdapterGoogleAdMobAds
Ad Source Name:AdMob Network
Ad Source ID:
Ad Source Instance Name:AdMob (default)
Ad Source Instance ID:AdMob (default)
AdUnitMapping:
{
pubid = "ca-pub-9939518381636264//21775744923/example/rewarded-interstitial/cak=no_cache&cadc=b0&caqid=BmnCZZjMEvzpkPIP5cWfQA";
}
Error: (null)
Latency: 2.724
** Extras Dictionary **
{
"creative_id" = "138471856178";
"line_item_id" = "6707237225";
}
** Mediation line items **
Entry (1)
Network: GADMAdapterGoogleAdMobAds
Ad Source Name:AdMob Network
Ad Source ID:
Ad Source Instance Name:AdMob (default)
Ad Source Instance ID:AdMob (default)
AdUnitMapping:
{
pubid = "ca-pub-9939518381636264//21775744923/example/rewarded-interstitial/cak=no_cache&cadc=b0&caqid=BmnCZZjMEvzpkPIP5cWfQA";
}
Error: (null)
Latency: 2.724
تشمل الخصائص على GADResponseInfo ما يلي:
| الموقع | الوصف |
|---|---|
adNetworkInfoArray |
تعرض هذه السمة قائمة GADAdNetworkResponseInfo
تتضمّن بيانات وصفية لكل وسيط مدرَج في استجابة الإعلان. ويمكن استخدامها
لتصحيح أخطاء توسّط العرض الإعلاني بدون انقطاع وتنفيذ عروض الأسعار. يتطابق ترتيب
القائمة مع ترتيب تدفق التوسط لطلب عرض الإعلان هذا.
راجِع معلومات استجابة المحوّل للحصول على مزيد من المعلومات. |
loadedAdNetworkResponseInfo |
تعرض هذه السمة GADAdNetworkResponseInfo الذي يتوافق مع وسيط الإعلان الذي حمّل الإعلان. |
adNetworkClassName |
تعرِض هذه السمة اسم فئة وسيط التوسط لشبكة الإعلانات التي حمّلت الإعلان. |
responseIdentifier |
معرّف الاستجابة هو معرّف فريد لاستجابة الإعلان. يمكن استخدام هذا المعرّف لتحديد الإعلان وحظره في مركز مراجعة الإعلانات. |
extrasDictionary |
تعرض هذه السمة معلومات إضافية عن استجابة الإعلان. قد تعرض الخدمات الإضافية المفاتيح التالية:
|
Swift
fileprivate func loadInterstitial() { AdManagerInterstitialAd.load( with: "/21775744923/example/interstitial", 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 creativeID = responseInfo?.extrasDictionary["creative_id"] let lineItemID = responseInfo?.extrasDictionary["line_item_id"] } }
Objective-C
- (void)loadInterstitial { [GADInterstitialAd loadWithAdUnitID:@"/21775744923/example/interstitial" 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 *creativeID = responseInfo.extrasDictionary[@"creative_id"]; NSString *lineItemID = responseInfo.extrasDictionary[@"line_item_id"]; }]; }
معلومات استجابة المحوّل
يحتوي GADAdNetworkResponseInfo على بيانات وصفية لكلّ محوّل مضمّن في استجابة الإعلان، ويمكن استخدامها لتصحيح أخطاء توسّط العرض الإعلاني بدون انقطاع وتنفيذ عروض الأسعار. يتطابق ترتيب القائمة مع ترتيب تدفق التوسط لطلب عرض الإعلان.
في ما يلي عينة من نتائج GADAdNetworkResponseInfo:
Network: GADMAdapterGoogleAdMobAds
Ad Source Name:AdMob Network
Ad Source ID:
Ad Source Instance Name:AdMob (default)
Ad Source Instance ID:AdMob (default)
AdUnitMapping:
{
pubid = "ca-pub-9939518381636264//21775744923/example/rewarded-interstitial/cak=no_cache&cadc=b0&caqid=BmnCZZjMEvzpkPIP5cWfQA";
}
Error: (null)
Latency: 2.724
بالنسبة إلى كل شبكة إعلانية، يوفّر GADAdNetworkResponseInfo الخصائص التالية:
| الموقع | الوصف |
|---|---|
error |
الخطأ المرتبط بالطلب المُرسَل إلى الشبكة تعرِض هذه السمة القيمة nil إذا حمّلت الشبكة إعلانًا بنجاح أو إذا لم تتم محاولة تحميل الإعلان من الشبكة. |
adSourceId |
تمثّل هذه السمة معرّف مصدر الإعلان المرتبط باستجابة المحوّل هذه. |
adSourceInstanceId |
معرّف مثيل مصدر الإعلان المرتبط باستجابة برنامج التكييف هذه. |
adSourceInstanceName |
اسم مثيل مصدر الإعلان المرتبط باستجابة برنامج التكييف هذه. تعرِض هذه السمة سلسلة فارغة إذا لم يتم ملؤها بواسطة مجموعة الشبكات الإعلانية المدِرّة للأرباح. |
adSourceName |
مصدر الإعلان الذي يمثّل شبكة الإعلانات المحدّدة التي تعرض مرّة الظهور. |
adNetworkClassName |
اسم فئة أداة ربط شبكة الإعلانات التي حمّلت الإعلان. |
adUnitMapping |
إعدادات الشبكة التي تم ضبطها من خلال واجهة مستخدم "مدير إعلانات Google" |
latency |
مقدار الوقت الذي استغرقته شبكة الإعلانات في تحميل إعلان. تعرض هذه السمة
0 إذا لم تتم محاولة الاتصال بالشبكة. |
Swift
fileprivate func loadInterstitial() { AdManagerInterstitialAd.load( with: "/21775744923/example/interstitial", 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 } }
Objective-C
- (void)loadInterstitial { [GADInterstitialAd loadWithAdUnitID:@"/21775744923/example/interstitial" 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; }]; }