الجمع بين طلبات الإعلانات المدمجة مع المحتوى المعروضة المخصّصة وإعلانات البانر

يمكنك دمج الإعلانات المدمجة مع المحتوى وإعلانات البانر في طلبات الإعلانات من خلال إجراء بعض التغييرات على الرمز.

المتطلبات الأساسية

تحميل إعلان

يتم تحميل الإعلانات المدمجة مع المحتوى التي يتم عرضها بشكل مخصّص من خلال عناصر GADAdLoader. يمكن أيضًا ضبط العنصر GADAdLoader لتقديم طلبات إعلانات يمكن أن تؤدي إلى عرض إعلان بانر أو إعلان مدمج مع المحتوى. تحديد أنّ إعلانات البانر يجب أن تتنافس مع الإعلانات المدمجة مع المحتوى لملء الطلب من خلال إضافة GADAdLoaderAdTypeGAMBanner إلى مَعلمة adTypes في الصفيف، بالإضافة إلى أنواع الإعلانات المدمجة مع المحتوى، مثل GADAdLoaderAdTypeNative عند إنشاء العنصر GADAdLoader.

Swift

adLoader = GADAdLoader(adUnitID: "/21775744923/example/native-and-banner",
    rootViewController: self,
    adTypes: [.native, .gamBanner],
    options: [... ad loader options objects ...])
adLoader.delegate = self

Objective-C

self.adLoader = [[GADAdLoader alloc]
      initWithAdUnitID:@"/21775744923/example/native-and-banner"
    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: "/21775744923/example/native-and-banner", rootViewController: self,
  adTypes: [.native, .gamBanner], options: [bannerViewOptions])

Objective-C

GAMBannerViewOptions *bannerViewOptions = [[GAMBannerViewOptions alloc] init];
bannerViewOptions.enableManualImpressions = YES;
self.adLoader = [[GADAdLoader alloc]
      initWithAdUnitID:@"/21775744923/example/native-and-banner"
    rootViewController:self
               adTypes:@[ GADAdLoaderAdTypeNative, GADAdLoaderAdTypeGAMBanner ]
               options:@[ bannerViewOptions ]];

إذا تم تحميل إعلان بانر، يمكنك استدعاء recordManualImpression عندما تحدّد أنّه تم عرض إعلان بنجاح ويظهر على الشاشة لتسجيل مرّة ظهور يدويًا:

Swift

bannerView.recordImpression()

Objective-C

[self.bannerView recordImpression];