הגדרה של תכונות מותאמות מתקדמות

בחירת פלטפורמה: Android iOS Android (Legacy)

למודעות מותאמות יש הרבה תכונות מתקדמות שמאפשרות לכם לבצע התאמות אישיות נוספות וליצור את חוויית הצופה במודעה הטובה ביותר שאפשר. במדריך הזה נסביר איך להשתמש בתכונות המתקדמות של מודעות מותאמות.

דרישות מוקדמות

אמצעי בקרה לנכסים

בקטע הזה מוסבר איך להתאים אישית את נכסי הקריאייטיב במודעות המותאמות. יש לכם אפשרות לציין יחס גובה-רוחב מועדף לנכסי מדיה ואיך נכסי התמונות יורדו ויוצגו.

הגדרות מועדפות של יחס הגובה-רוחב של המדיה

אמצעי הבקרה של יחס הגובה-רוחב של המדיה מאפשרים לכם לציין העדפה לגבי יחס הגובה-רוחב של נכסי קריאייטיב של מודעות.

מגדירים את 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.

  • האפשרות לשלוט בהורדת תמונות מושבתת כברירת מחדל.

  • כשההגדרה מושבתת, Google Mobile Ads SDK מאכלס בשבילכם גם את התמונה וגם את ה-URI.

  • כשהאפשרות הזו מופעלת, ה-SDK מאכלס רק את ה-URI, וכך מאפשר לכם להוריד את התמונות בפועל לפי שיקול דעתכם.

בדוגמה הבאה, ה-SDK מונחה להחזיר רק את ה-URI.

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

אמצעי הבקרה של מיקום 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 ]];

רכיבי UI להפעלה בהתאמה אישית

התכונה הזו מאפשרת לכם לבקש רכיבי UI בהתאמה אישית להפעלת וידאו כדי להפעיל, להשהות או להשתיק את הסרטון.

מגדירים את 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 ]];

המתנה לאירועים של תנועות החלקה

כשמתועדת לחיצה באמצעות תנועת החלקה, הפונקציה Google Mobile Ads SDK מפעילה את שיטת הנציג 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.");
}

גישור

מחוות מותאמות אישית של קליקים פועלות רק במודעות מותאמות שמוצגות באמצעות Google Mobile Ads SDK. מקורות מודעות שנדרשים בהם ערכות SDK של צד שלישי לצורך הצגה, לא מגיבים להגדרה של כיווני קליקים בהתאמה אישית.