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

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

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

تحميل إعلان

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

اضبط حجم إعلان أصغر من حجم شاشة الجهاز أو مساوٍ له. لتحديد الحد الأقصى لحجم الشاشة على أجهزة iOS 26 والإصدارات الأحدث، استخدِم السمة UIWindowScene.effectiveGeometry.coordinateSpace. على أجهزة iOS 18 والإصدارات الأقدم، استخدِم السمة UIWindowScene.coordinateSpace. لمعرفة تفاصيل حول قيود الحجم، اطّلِع على مقالة تحديد المشاكل وحلّها المتعلّقة بمرات الظهور غير المملوءة في "مدير إعلانات Google".

العد اليدوي لمرات الظهور

لتفعيل العد اليدوي لمرات الظهور على الإعلانات البانر التي يتم تحميلها من خلال 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];