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

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

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

  • الإصدار 7.20.0 أو إصدار أحدث من "SDK لإعلانات Google على الأجهزة الجوّالة"
  • إكمال دليل البدء

جارٍ تحميل إعلان

يتم تحميل الإعلانات المدمجة مع المحتوى المعروضة بشكل مخصّص عبر عناصر 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];