خيارات الإعلانات المدمجة مع المحتوى

اختيار النظام الأساسي: Android iOS

تتضمّن الإعلانات المدمجة مع المحتوى العديد من الميزات المتقدّمة التي تتيح لك إجراء تخصيصات إضافية وتقديم أفضل تجربة إعلانية ممكنة. يوضّح لك هذا الدليل كيفية استخدام الميزات المتقدّمة للإعلانات المدمجة مع المحتوى.

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

عناصر التحكّم في مواد العرض

يوضّح هذا القسم كيفية تخصيص مواد عرض تصاميم الإعلانات في إعلاناتك على المنصّة الأصلية. يمكنك تحديد نسبة العرض إلى الارتفاع المفضّلة لمواد عرض الوسائط وطريقة تنزيل مواد عرض الصور وعرضها.

عناصر التحكّم المفضّلة في نسبة العرض إلى الارتفاع للوسائط

تتيح لك عناصر التحكّم في نسبة العرض إلى الارتفاع للوسائط تحديد إعداد مفضّل لنسبة العرض إلى الارتفاع لتصاميم الإعلانات.

اضبط GADNativeAdMediaAdLoaderOptions mediaAspectRatio باستخدام GADMediaAspectRatio.

  • عند عدم ضبط هذه السمة، يمكن أن يكون للإعلان المعروض أي نسبة عرض إلى ارتفاع للوسائط.

  • عند ضبط هذا الخيار، ستتمكّن من تحسين تجربة المستخدم من خلال تحديد نوع نسبة العرض إلى الارتفاع المفضَّل.

يوضّح المثال التالي كيفية توجيه حزمة تطوير البرامج (SDK) إلى تفضيل صورة أو فيديو بنسبة عرض إلى ارتفاع معيّنة.

Swift

let nativeOptions = NativeAdMediaAdLoaderOptions()
nativeOptions.mediaAspectRatio = .any

adLoader = AdLoader(
  adUnitID: "nativeAdUnitID",
  rootViewController: self,
  adTypes: [.native],
  options: [nativeOptions])

Objective-C

GADNativeAdMediaAdLoaderOptions *nativeOptions = [[GADNativeAdMediaAdLoaderOptions alloc] init];
nativeOptions.mediaAspectRatio = GADMediaAspectRatioAny;

self.adLoader = [[GADAdLoader alloc] initWithAdUnitID:"nativeAdUnitID"
                                   rootViewController:self
                                              adTypes:@[ GADAdLoaderAdTypeNative ]
                                              options:@[ nativeOptions ]];

استبدِل nativeAdUnitID برقم تعريف وحدتك الإعلانية.

التحكّم في تنزيل الصور

يتيح لك عنصر التحكّم في تنزيل الصور تحديد ما إذا كانت حزمة تطوير البرامج (SDK) ستعرض مواد عرض الصور أو معرّفات الموارد الموحّدة (URI) فقط.

اضبط GADNativeAdImageAdLoaderOptions disableImageLoading على القيمة BOOL.

  • تكون عناصر التحكّم في تنزيل الصور غير مفعّلة تلقائيًا.

  • عند إيقاف هذه الميزة، تملأ حزمة SDK لإعلانات Google على الأجهزة الجوّالة كلاً من الصورة ومعرّف الموارد المنتظم (URI) نيابةً عنك.

  • عند تفعيل هذا الخيار، تملأ حزمة SDK معرّف الموارد الموحّد فقط، ما يتيح لك تنزيل الصور الفعلية حسب تقديرك.

يوضّح المثال التالي كيفية توجيه حزمة تطوير البرامج (SDK) لعرض معرّف الموارد الموحّد فقط.

Swift

let nativeOptions = NativeAdImageAdLoaderOptions()
nativeOptions.isImageLoadingDisabled = true

adLoader = AdLoader(
  adUnitID: "nativeAdUnitID",
  rootViewController: self,
  adTypes: [.native],
  options: [nativeOptions])

Objective-C

GADNativeAdImageAdLoaderOptions *nativeOptions = [[GADNativeAdImageAdLoaderOptions alloc] init];
nativeOptions.disableImageLoading = YES;

self.adLoader = [[GADAdLoader alloc] initWithAdUnitID:"nativeAdUnitID"
                                   rootViewController:self
                                              adTypes:@[ GADAdLoaderAdTypeNative ]
                                              options:@[ nativeOptions ]];

عناصر التحكّم في حمولة الصور

تحتوي بعض الإعلانات على سلسلة من الصور بدلاً من صورة واحدة فقط. استخدِم هذه الميزة لتحديد ما إذا كان تطبيقك جاهزًا لعرض كل الصور أو صورة واحدة فقط.

  • يتم إيقاف عناصر التحكّم في حمولة الصورة تلقائيًا.

  • عند إيقاف هذه الميزة، يطلب تطبيقك من حزمة SDK توفير الصورة الأولى فقط لأي مواد عرض تتضمّن سلسلة من الصور.

  • عند تفعيل هذا الخيار، يشير تطبيقك إلى أنّه جاهز لعرض جميع الصور لأي مواد عرض تحتوي على أكثر من صورة واحدة.

يوضح المثال التالي كيفية توجيه حزمة تطوير البرامج (SDK) لعرض مواد عرض صور متعددة.

Swift

let nativeOptions = NativeAdImageAdLoaderOptions()
nativeOptions.shouldRequestMultipleImages = true

adLoader = AdLoader(
  adUnitID: "nativeAdUnitID",
  rootViewController: self,
  adTypes: [.native],
  options: [nativeOptions])

Objective-C

GADNativeAdImageAdLoaderOptions *nativeOptions = [[GADNativeAdImageAdLoaderOptions alloc] init];
nativeOptions.shouldRequestMultipleImages = YES;

self.adLoader = [[GADAdLoader alloc] initWithAdUnitID:"nativeAdUnitID"
                                   rootViewController:self
                                              adTypes:@[ GADAdLoaderAdTypeNative ]
                                              options:@[ nativeOptions ]];

مواضع "خيارات الإعلان"

يوضّح هذا القسم بالتفصيل كيفية تحديد موضع التراكب AdChoices. يمكنك ضبط موضعها في إحدى الزوايا الأربع أو عرضها ضمن طريقة عرض مخصّصة.

عناصر التحكّم في موضع AdChoices

تتيح لك عناصر التحكّم في موضع AdChoices اختيار الزاوية التي تريد عرض رمز "خيارات الإعلان" فيها.

اضبط GADNativeAdViewAdOptions preferredAdChoicesPosition على قيمة GADAdChoicesPosition.

  • إذا لم يتم ضبطها، يتم ضبط موضع رمز AdChoices على أعلى يسار الصفحة.

  • في حال ضبط هذا الخيار، يتم وضع أداة AdChoices في الموضع المخصّص المطلوب.

يوضّح المثال التالي كيفية ضبط موضع مخصّص لصورة AdChoices.

Swift

let nativeOptions = NativeAdViewAdOptions()
nativeOptions.preferredAdChoicesPosition = .topRightCorner

adLoader = AdLoader(
  adUnitID: "nativeAdUnitID",
  rootViewController: self,
  adTypes: [.native],
  options: [nativeOptions])

Objective-C

GADNativeAdViewAdOptions *nativeOptions = [[GADNativeAdViewAdOptions alloc] init];
nativeOptions.preferredAdChoicesPosition = GADAdChoicesPositionTopRightCorner;

self.adLoader = [[GADAdLoader alloc] initWithAdUnitID:"nativeAdUnitID"
                                   rootViewController:self
                                              adTypes:@[ GADAdLoaderAdTypeNative ]
                                              options:@[ nativeOptions ]];

طريقة العرض المخصّصة لـ AdChoices

تتيح لك ميزة العرض المخصّص لـ AdChoices وضع رمز AdChoices في موقع مخصّص. يختلف ذلك عن عناصر التحكّم في موضع AdChoices التي تسمح فقط بتحديد إحدى الزوايا الأربع.

اضبط السمة GADNativeAd.adChoicesView باستخدام GADAdChoicesView قبل العرض، وسيتم عرض محتوى AdChoices داخل GADAdChoicesView.

يوضّح المثال التالي كيفية ضبط طريقة عرض مخصّصة لأداة AdChoices. يتم عرض رمز AdChoices داخل GADAdChoicesView:

Swift

private func createAdChoicesView(nativeAdView: NativeAdView) {
  // Define a custom position for the AdChoices icon.
  let customRect = CGRect(x: 100, y: 100, width: 15, height: 15)
  let customAdChoicesView = AdChoicesView(frame: customRect)
  nativeAdView.addSubview(customAdChoicesView)
  nativeAdView.adChoicesView = customAdChoicesView
}

Objective-C

- (void)createAdChoicesViewWithNativeAdView:(GADNativeAdView *)nativeAdView {
  // Define a custom position for the AdChoices icon.
  CGRect customRect = CGRectMake(100, 100, 15, 15);
  GADAdChoicesView *customAdChoicesView = [[GADAdChoicesView alloc] initWithFrame:customRect];
  [nativeAdView addSubview:customAdChoicesView];
  nativeAdView.adChoicesView = customAdChoicesView;
}

عناصر التحكُّم في الفيديو

يوضّح هذا القسم كيفية تخصيص تجربة تشغيل إعلانات الفيديو. يمكنك ضبط حالة الكتم الأولية وتنفيذ عناصر تحكّم مخصّصة في التشغيل.

سلوك بدء كتم الصوت

يتيح لك سلوك "بدء التشغيل مع كتم الصوت" إيقاف الصوت أو تفعيله عند بدء تشغيل الفيديو.

اضبط GADVideoOptions startMuted على القيمة BOOL.

  • يتم تفعيل سلوك "بدء التشغيل مع كتم الصوت" تلقائيًا.

  • عند إيقاف هذا الخيار، يجب أن يبدأ تطبيقك تشغيل الفيديو مع الصوت.

  • عند تفعيل هذا الخيار، يطلب تطبيقك أن يبدأ الفيديو مع كتم الصوت.

يوضّح المثال التالي كيفية بدء الفيديو مع تشغيل الصوت.

Swift

let videoOptions = VideoOptions()
videoOptions.shouldStartMuted = false

adLoader = AdLoader(
  adUnitID: "nativeAdUnitID",
  rootViewController: self,
  adTypes: [.native],
  options: [videoOptions])

Objective-C

GADVideoOptions *videoOptions = [[GADVideoOptions alloc] init];
videoOptions.startMuted = NO;

self.adLoader = [[GADAdLoader alloc] initWithAdUnitID:"nativeAdUnitID"
                                   rootViewController:self
                                              adTypes:@[ GADAdLoaderAdTypeNative ]
                                              options:@[ videoOptions ]];

عناصر التحكّم المخصّصة في التشغيل

يتيح لك ذلك طلب عناصر تحكّم مخصّصة في إدخال الفيديو لتشغيل الفيديو أو إيقافه مؤقتًا أو كتم صوته.

اضبط GADVideoOptions customControlsRequested على القيمة BOOL.

  • تكون عناصر التحكّم المخصّصة في التشغيل غير مفعّلة تلقائيًا.

  • عند إيقاف هذا الخيار، سيظهر الفيديو مع عناصر التحكّم في الإدخال التي يعرضها حزمة تطوير البرامج (SDK).

إذا كان الإعلان يتضمّن محتوًى فيديو وتم تفعيل عناصر التحكّم المخصّصة، عليك عرض عناصر التحكّم المخصّصة مع الإعلان، لأنّ الإعلان لن يعرض أي عناصر تحكّم. يمكن لوحدات التحكّم بعد ذلك استدعاء الطرق ذات الصلة في

GADVideoController.

يوضّح المثال التالي كيفية طلب فيديو باستخدام عناصر تحكّم مخصّصة في التشغيل.

Swift

let videoOptions = VideoOptions()
videoOptions.areCustomControlsRequested = true

adLoader = AdLoader(
  adUnitID: "nativeAdUnitID",
  rootViewController: self,
  adTypes: [.native],
  options: [videoOptions])

Objective-C

GADVideoOptions *videoOptions = [[GADVideoOptions alloc] init];
videoOptions.customControlsRequested = YES;

self.adLoader = [[GADAdLoader alloc] initWithAdUnitID:"nativeAdUnitID"
                                   rootViewController:self
                                              adTypes:@[ GADAdLoaderAdTypeNative ]
                                              options:@[ videoOptions ]];

التحقّق من تفعيل عناصر التحكّم المخصّصة

بما أنّه لا يُعرف في وقت الطلب ما إذا كان الإعلان المعروض سيسمح بعناصر تحكّم مخصّصة في الفيديو، عليك التحقّق مما إذا كانت عناصر التحكّم المخصّصة مفعّلة.

Swift

private func checkCustomControlsEnabled(nativeAd: NativeAd) -> Bool {
  let videoController = nativeAd.mediaContent.videoController
  return videoController.areCustomControlsEnabled
}

Objective-C

- (BOOL)checkCustomControlsEnabledWithNativeAd:(GADNativeAd *)nativeAd {
  GADVideoController *videoController = nativeAd.mediaContent.videoController;
  return videoController.customControlsEnabled;
}

عرض عناصر تحكّم مخصّصة في الفيديو

يمكنك عرض عناصر تحكّم مخصّصة في الفيديو باتّباع أفضل الممارسات التالية:

  1. اعرض طريقة عرض عناصر التحكّم المخصّصة كعنصر فرعي من طريقة عرض الإعلان الأصلي. تتيح هذه الطريقة لاحتساب إمكانية العرض في ميزة "القياس المفتوح" اعتبار عناصر التحكّم المخصّصة عائقًا غير ضارّ.
  2. تجنَّب عرض طبقة غير مرئية فوق طريقة عرض الوسائط بأكملها. تحظر التراكبات النقرات على عرض الوسائط، ما يؤثّر سلبًا في أداء الإعلانات المدمجة مع المحتوى. بدلاً من ذلك، أنشئ طبقة صغيرة بحجم يكفي لاحتواء عناصر التحكّم.

إيماءات النقر المخصّصة

إيماءات النقر المخصّصة هي إحدى ميزات الإعلانات المدمجة مع المحتوى التي تتيح تسجيل عمليات التمرير السريع على مشاهدات الإعلانات كنقرات على الإعلانات. تم تصميم هذه الميزة للعمل مع التطبيقات التي تستخدم إيماءات التمرير السريع للتنقّل في المحتوى. يوضّح هذا الدليل كيفية تفعيل إيماءات النقر المخصّصة على إعلاناتك المدمجة مع المحتوى.

ابدأ بإنشاء مثيل GADNativeAdCustomClickGestureOptions باستخدام اتجاه التمرير السريع الذي اخترته. عليك أيضًا تحديد ما إذا كنت تريد السماح بالنقرات على الشاشة باعتبارها نقرات.

  • يتم إيقاف إيماءات النقر المخصّصة تلقائيًا.

  • عند إيقاف هذا الخيار، سيتم احتساب النقرات فقط.

  • عند تفعيل هذا الخيار، سيتم احتساب إيماءات التمرير السريع كنقرات، ويمكنك تحديد ما إذا كان سيتم احتساب النقرات أيضًا كنقرات.

يوضّح لك المثال التالي كيفية تنفيذ إيماءة تمرير سريع مخصّصة إلى اليمين مع الحفاظ على سلوك النقر العادي.

Swift

let swipeGestureOptions = NativeAdCustomClickGestureOptions(
  swipeGestureDirection: .right,
  tapsAllowed: true)

adLoader = AdLoader(
  adUnitID: "nativeAdUnitID",
  rootViewController: self,
  adTypes: [.native],
  options: [swipeGestureOptions])

Objective-C

GADNativeAdCustomClickGestureOptions *swipeGestureOptions =
    [[GADNativeAdCustomClickGestureOptions alloc]
        initWithSwipeGestureDirection:UISwipeGestureRecognizerDirectionRight
                          tapsAllowed:YES];

self.adLoader = [[GADAdLoader alloc] initWithAdUnitID:"nativeAdUnitID"
                                   rootViewController:self
                                              adTypes:@[ GADAdLoaderAdTypeNative ]
                                              options:@[ swipeGestureOptions ]];

الاستماع إلى أحداث إيماءات التمرير السريع

عند تسجيل نقرة بإيماءة التمرير السريع، تستدعي حزمة تطوير البرامج "SDK لإعلانات Google على الأجهزة الجوّالة" طريقة التفويض nativeAdDidRecordSwipeGestureClick: في GADNativeAdDelegate ، بالإضافة إلى طريقة التفويض الحالية nativeAdDidRecordClick:.

Swift

// Called when a swipe gesture click is recorded, as configured in
// NativeAdCustomClickGestureOptions.
func nativeAdDidRecordSwipeGestureClick(_ nativeAd: NativeAd) {
  print("A swipe gesture click has occurred.")
}

// Called when a swipe gesture click or a tap click is recorded.
func nativeAdDidRecordClick(_ nativeAd: NativeAd) {
  print("A swipe gesture click or tap click has occurred.")
}

Objective-C

// Called when a swipe gesture click is recorded, as configured in
// GADNativeAdCustomClickGestureOptions.
- (void)nativeAdDidRecordSwipeGestureClick:(GADNativeAd *)nativeAd {
  NSLog(@"A swipe gesture click has occurred.");
}

// Called when a swipe gesture click or a tap click is recorded.
- (void)nativeAdDidRecordClick:(GADNativeAd *)nativeAd {
  NSLog(@"A swipe gesture click or tap click has occurred.");
}

الوساطة

لا تعمل إيماءات النقر المخصّصة إلا على الإعلانات المدمَجة مع المحتوى التي تعرضها حزمة "SDK لإعلانات Google على الأجهزة الجوّالة". مصادر الإعلانات التي تتطلّب حِزم تطوير برامج تابعة لجهات خارجية لعرض الإعلانات لا تستجيب لإعداد توجيهات النقرات المخصّصة.