ডিবাগিং এবং লগিংয়ের উদ্দেশ্যে, সফলভাবে লোড হওয়া বিজ্ঞাপনগুলিতে একটি GADResponseInfo অবজেক্ট থাকে। এই অবজেক্টে লোড করা বিজ্ঞাপন সম্পর্কে তথ্য রয়েছে, বিজ্ঞাপনটি লোড করার জন্য ব্যবহৃত মধ্যস্থতা জলপ্রপাত সম্পর্কে তথ্য ছাড়াও।
যেসব ক্ষেত্রে একটি বিজ্ঞাপন সফলভাবে লোড হয়, বিজ্ঞাপনের বস্তুর একটি GADResponseInfo বৈশিষ্ট্য থাকে। উদাহরণস্বরূপ, GADInterstitialAd.responseInfo একটি লোড করা ইন্টারস্টিশিয়াল বিজ্ঞাপনের প্রতিক্রিয়া তথ্য পায়।
যেসব ক্ষেত্রে বিজ্ঞাপন লোড হতে ব্যর্থ হয় এবং শুধুমাত্র একটি ত্রুটি পাওয়া যায়, সেসব ক্ষেত্রে ত্রুটির userInfo অভিধানে GADErrorUserInfoKeyResponseInfo কী ব্যবহার করে GADResponseInfo পাওয়া যায়।
সুইফট
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 | প্রতিক্রিয়া শনাক্তকারী হল বিজ্ঞাপন প্রতিক্রিয়ার জন্য একটি অনন্য শনাক্তকারী। এই শনাক্তকারী বিজ্ঞাপন পর্যালোচনা কেন্দ্র (ARC) এ বিজ্ঞাপনটি সনাক্ত করতে এবং ব্লক করতে ব্যবহার করা যেতে পারে। |
extrasDictionary | বিজ্ঞাপনের প্রতিক্রিয়া সম্পর্কে অতিরিক্ত তথ্য প্রদান করে। অতিরিক্তগুলি নিম্নলিখিত কীগুলি প্রদান করতে পারে:
|
সুইফট
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 UI থেকে সেট করা নেটওয়ার্ক কনফিগারেশন। |
latency | একটি বিজ্ঞাপন লোড করতে বিজ্ঞাপন নেটওয়ার্ক কত সময় ব্যয় করেছে। নেটওয়ার্ক লোড করার চেষ্টা না করা হলে 0 প্রদান করে। |
সুইফট
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; }]; }