כמה שינויים בקוד תוכלו לשלב בין מודעות מותאמות לבין מודעות באנר בבקשות למודעות.
דרישות מוקדמות
- גרסה 7.20.0 ואילך של Google Mobile Ads SDK
- ביצוע ההוראות המפורטות במדריך תחילת העבודה
המערכת טוענת מודעה
מודעות מותאמות שמעובדות בהתאמה אישית נטענות באמצעות אובייקטים מסוג GADAdLoader
. ניתן גם להגדיר את האובייקט GADAdLoader
כך שיבצע בקשות להצגת מודעות שיכולות להוביל להצגה של מודעת באנר או של מודעה מותאמת. הוספת הערך GADAdLoaderAdTypeGAMBanner
לפרמטר המערך adTypes
, יחד עם סוגים של מודעות מותאמות כמו GADAdLoaderAdTypeNative
בעת יצירת האובייקט GADAdLoader
, מציינת שמודעות באנר צריכות להתחרות במודעות מותאמות על מנת למלא את הבקשה.
Swift
adLoader = GADAdLoader(adUnitID: "/6499/example/nativeandbanner", rootViewController: self, adTypes: [.native, .gamBanner], options: [... ad loader options objects ...]) adLoader.delegate = self
Objective-C
self.adLoader = [[GADAdLoader alloc] initWithAdUnitID:@"/6499/example/nativeandbanner" rootViewController:rootViewController adTypes:@[ GADAdLoaderAdTypeNative, GADAdLoaderAdTypeGAMBanner ] options:@[ ... ad loader options objects ... ]]; self.adLoader.delegate = self;
GAMBannerAdLoaderDelegate
כששולחים בקשה למודעות באנר דרך GADAdLoader
, מקבל הגישה לטעינת מודעות חייב להתאים לפרוטוקול GAMBannerAdLoaderDelegate
. הפרוטוקול הזה כולל הודעה שנשלחת כשמודעת באנר נטענת:
Swift
public func adLoader(_ adLoader: GADAdLoader, didReceive GAMBannerView: GAMBannerView)
Objective-C
- (void)adLoader:(GADAdLoader *)adLoader didReceiveGAMBannerView:(GAMBannerView *)bannerView;
בעל הגישה לטעינת מודעות חייב לציין גם את הגדלים של מודעות הבאנר שצריך לבקש על ידי שליחת התגובה להודעה validBannerSizesForAdLoader
כפי שמוצג בהמשך.
Swift
public func validBannerSizes(for adLoader: GADAdLoader) -> [NSValue] { return [NSValueFromGADAdSize(GADAdSizeBanner), NSValueFromGADAdSize(GADAdSizeMediumRectangle), NSValueFromGADAdSize(GADAdSizeFromCGSize(CGSize(width: 120, height: 20)))] }
Objective-C
- (NSArray*)validBannerSizesForAdLoader:(GADAdLoader *)adLoader { return @[ @(GADAdSizeBanner), @(GADAdSizeMediumRectangle), @(GADAdSizeFromCGSize(CGSizeMake(120, 20))) ]; }
ספירת חשיפות ידנית
כדי להפעיל ספירת חשיפות ידנית של מודעות באנר שנטענות דרך GADAdLoader
, צריך להגדיר את הערך GAMBannerViewOptions
עם enableManualImpressions
כשהערך הוא YES
כשמפעילים את GADAdLoader
.
Swift
let bannerViewOptions = GAMBannerViewOptions() bannerViewOptions.enableManualImpressions = true adLoader = GADAdLoader( adUnitID: "/6499/example/nativeandbanner", rootViewController: self, adTypes: [.native, .gamBanner], options: [bannerViewOptions])
Objective-C
GAMBannerViewOptions *bannerViewOptions = [[GAMBannerViewOptions alloc] init]; bannerViewOptions.enableManualImpressions = YES; self.adLoader = [[GADAdLoader alloc] initWithAdUnitID:@"/6499/example/nativeandbanner" rootViewController:self adTypes:@[ GADAdLoaderAdTypeNative, GADAdLoaderAdTypeGAMBanner ] options:@[ bannerViewOptions ]];
אם מודעת באנר נטענת, תוכלו להפעיל את recordManualImpression
אחרי שתבדקו שהמודעה הוחזרה בהצלחה ומופיעה במסך כדי להפעיל חשיפה באופן ידני:
Swift
bannerView.recordImpression()
Objective-C
[self.bannerView recordImpression];