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

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

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

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

تحميل إعلان

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