למודעות מותאמות יש הרבה תכונות מתקדמות שמאפשרות לבצע התאמות אישיות נוספות ולספק את חוויית הצפייה הטובה ביותר במודעות. במדריך הזה מוסבר איך להשתמש בתכונות המתקדמות של מודעות מותאמות.
דרישות מוקדמות
- משלבים את פורמט המודעה המותאמת.
אמצעי בקרה על נכסים
אמצעי בקרה על יחס הגובה-רוחב המועדף של המדיה
אמצעי הבקרה של יחס גובה-רוחב של מדיה מאפשרים לכם לציין העדפה ליחס גובה-רוחב של נכסי הקריאייטיב של המודעות.
מגדירים את GADNativeAdMediaAdLoaderOptions mediaAspectRatio
באמצעות GADMediaAspectRatio
.
אם לא תגדירו את הערך, למודעה שתוחזר יכול להיות כל יחס גובה-רוחב של מדיה.
אחרי שתגדירו את האפשרות הזו, תוכלו לשפר את חוויית המשתמש על ידי ציון סוג יחס הגובה-רוחב המועדף.
בדוגמה הבאה מוסבר איך להורות ל-SDK להעדיף תמונה או סרטון עם יחס גובה-רוחב ספציפי.
GADNativeAdMediaAdLoaderOptions *nativeOption = [[GADNativeAdMediaAdLoaderOptions alloc] init];
nativeOption.mediaAspectRatio = GADMediaAspectRatioAny;
GADAdLoader* adLoader = [[GADAdLoader alloc] initWithAdUnitID:@"ca-app-pub-3940256099942544/3986624511"
rootViewController:self
adTypes:@[ GADAdLoaderAdTypeNative ]
options:@[ nativeOption ]];
בקרה להורדת תמונה
אמצעי הבקרה על הורדת תמונות מאפשר לכם לקבוע אם ה-SDK יחזיר נכסי תמונות או רק מזהי URI.
מגדירים אתGADNativeAdImageAdLoaderOptions disableImageLoading
ערכה של BOOL
.
אמצעי הבקרה על הורדת תמונות מושבתים כברירת מחדל.
כשההשבתה מושבתת, Google Mobile Ads SDK מאכלס גם את התמונה וגם את ה-URI בשבילכם.
כשהתכונה מופעלת, ה-SDK מאכלס רק את ה-URI, ומאפשר לכם להוריד את התמונות בפועל לפי שיקול דעתכם.
בדוגמה הבאה מורה ל-SDK להחזיר רק את ה-URI.
GADNativeAdImageAdLoaderOptions *nativeOption = [[GADNativeAdImageAdLoaderOptions alloc] init];
nativeOption.disableImageLoading = YES;
GADAdLoader* adLoader = [[GADAdLoader alloc] initWithAdUnitID:@"ca-app-pub-3940256099942544/3986624511"
rootViewController:self
adTypes:@[ GADAdLoaderAdTypeNative ]
options:@[ nativeOption ]];
אמצעי בקרה על עומס העבודה של התמונה
בחלק מהמודעות יש סדרה של תמונות במקום תמונה אחת. אפשר להשתמש בתכונה הזו כדי לציין אם האפליקציה מוכנה להציג את כל התמונות או רק אחת.
מגדירים אתGADNativeAdImageAdLoaderOptions shouldRequestMultipleImages
ערכה של BOOL
.
אמצעי הבקרה של עומס התמונה מושבתים כברירת מחדל.
כשהתכונה מושבתת, האפליקציה מורה ל-SDK לספק רק את התמונה הראשונה של כל נכס שמכיל סדרה.
כשהתכונה הזו מופעלת, האפליקציה מציינת שהיא מוכנה להציג את כל התמונות של נכסים שיש להם יותר מתמונה אחת.
בדוגמה הבאה מצוינות הוראות ל-SDK להחזיר כמה נכסי תמונות.
GADNativeAdImageAdLoaderOptions *nativeOption = [[GADNativeAdImageAdLoaderOptions alloc] init];
nativeOption.shouldRequestMultipleImages = YES;
GADAdLoader* adLoader = [[GADAdLoader alloc] initWithAdUnitID:@"ca-app-pub-3940256099942544/3986624511"
rootViewController:self
adTypes:@[ GADAdLoaderAdTypeNative ]
options:@[ nativeOption ]];
מיקומי מודעות של AdChoices
פקדי מיקום של AdChoices
אמצעי הבקרה של מיקום AdChoices מאפשרים לכם לבחור באיזו פינה להציג את סמל AdChoices.
מגדירים את GADNativeAdViewAdOptions preferredAdChoicesPosition
ערכה של GADAdChoicesPosition
.
אם לא תגדירו את המיקום, הסמל של AdChoices יופיע בפינה השמאלית העליונה.
אם ההגדרה מוגדרת, הבקשה להצגת חלון AdChoices תוצג במיקום המותאם אישית המבוקש.
בדוגמה הבאה מוסבר איך להגדיר מיקום מותאם אישית של תמונה של AdChoices.
GADNativeAdViewAdOptions *nativeOptions = [[GADNativeAdViewAdOptions alloc] init];
nativeOptions.preferredAdChoicesPosition = GADAdChoicesPositionTopLeftCorner;
GADAdLoader* adLoader = [[GADAdLoader alloc] initWithAdUnitID:@"ca-app-pub-3940256099942544/3986624511"
rootViewController:self
adTypes:@[ GADAdLoaderAdTypeNative ]
options:@[ nativeOptions ]];
תצוגה מותאמת אישית של AdChoices
התכונה 'תצוגה מותאמת אישית של AdChoices' מאפשרת למקם את סמל AdChoices במיקום מותאם אישית. זה שונה מאמצעי הבקרה על המיקום של AdChoices, שמאפשרים לציין רק אחת מארבע הפינות.
מגדירים את המאפיין GADNativeAd.adChoicesView
באמצעות GADAdChoicesView
לפני העיבוד, ותוכן AdChoices ייכלל ב-GADAdChoicesView
.
הדוגמה הבאה ממחישה איך להגדיר תצוגה מותאמת אישית של AdChoices. סמל AdChoices יוצג בתוך GADAdChoicesView
.
Objective-C
- (void)adLoader:(GADAdLoader *)adLoader didReceiveNativeAd:(GADNativeAd *)nativeAd {
...
GADAdChoicesView *customAdChoicesView =
[[GADAdChoicesView alloc] initWithFrame: CGRectMake(..., ..., ..., ...)];
[nativeAdView addSubview:customAdChoicesView];
nativeAdView.adChoicesView = customAdChoicesView;
// Associate the native ad view with the native ad object. This is
// required to make the ad clickable.
// Note: this should always be done after populating the ad views.
nativeAdView.nativeAd = nativeAd;
}
Swift
func adLoader(_ adLoader: GADAdLoader, didReceive nativeAd: GADNativeAd) {
refreshAdButton.isEnabled = true
...
// Define a custom position for the AdChoices icon.
let customRect = CGRect(x: 100, y: 100, width: 15, height: 15)
let customAdChoicesView = GADAdChoicesView(frame: customRect)
nativeAdView.addSubview(customAdChoicesView)
nativeAdView.adChoicesView = customAdChoicesView
// Associate the native ad view with the native ad object. This is
// required to make the ad clickable.
// Note: this should always be done after populating the ad views.
nativeAdView.nativeAd = nativeAd;
}
פקדי סרטונים
התנהגות ההשתקה בתחילת השיחה
ההתנהגות של ההשתקה בהתחלה מאפשרת להשבית או להפעיל את האודיו בתחילת הסרטון.
מגדירים אתGADVideoOptions startMuted
ערכה של BOOL
.
ההתנהגות של השהיה בהתחלה מופעלת כברירת מחדל.
כשהתכונה מושבתת, האפליקציה מבקשת שהסרטון יתחיל עם אודיו.
כשהתכונה הזו מופעלת, האפליקציה מבקשת שהסרטון יתחיל עם האודיו מושתק.
הדוגמה הבאה מראה איך להתחיל את הסרטון עם אודיו לא מושתק.
GADVideoOptions *nativeOptions = [[GADVideoOptions alloc] init];
nativeOptions.startMuted = NO;
GADAdLoader* adLoader = [[GADAdLoader alloc] initWithAdUnitID:@"ca-app-pub-3940256099942544/3986624511"
rootViewController:self
adTypes:@[ GADAdLoaderAdTypeNative ]
options:@[ nativeOptions ]];
פקדי הפעלה בהתאמה אישית
כך אפשר לבקש בקרים מותאמים אישית לקלט הווידאו כדי להפעיל, להשהות או להשתיק את הסרטון.
מגדירים אתGADVideoOptions customControlsRequested
ערכה של BOOL
.
כברירת מחדל, אמצעי הבקרה בהתאמה אישית של ההפעלה מושבתים.
כשהאפשרות מושבתת, בסרטון יוצגו פקדי קלט שעברו רינדור SDK.
- אחרי ההפעלה, תוכלו להשתמש בסמלים
GADVideoController play
,GADVideoController pause
ו-GADVideoController setMute
כדי לשלוט במודעת הווידאו.
- אם המודעה כוללת תוכן וידאו והפקדים המותאמים אישית מופעלים, צריך להציג את הפקדים המותאמים אישית יחד עם המודעה, כי המודעה עצמה לא תציג אף אמצעי בקרה. לאחר מכן אמצעי הבקרה יכולים להפעיל את השיטות הרלוונטיות ב-
GADVideoController
.
בדוגמה הבאה מוסבר איך לבקש סרטון עם פקדי הפעלה מותאמים אישית.
GADVideoOptions *nativeOptions = [[GADVideoOptions alloc] init];
nativeOptions.customControlsRequested = YES;
GADAdLoader* adLoader = [[GADAdLoader alloc] initWithAdUnitID:@"ca-app-pub-3940256099942544/3986624511"
rootViewController:self
adTypes:@[ GADAdLoaderAdTypeNative ]
options:@[ nativeOptions ]];
בדיקה אם אמצעי הבקרה בהתאמה אישית מופעלים
מכיוון שלא ידוע בזמן שליחת הבקשה אם המודעה שתוחזר תאפשר אמצעי בקרה מותאמים אישית על הסרטון, עליכם לבדוק אם אמצעי הבקרה מותאמים אישית מופעלים בה.
Objective-C
- (void)adLoader:(GADAdLoader *)adLoader
didReceiveNativeAd:(GADNativeAd*)nativeAd {
GADVideoController *videoController = nativeAd.mediaContent.videoController;
BOOL canShowCustomControls = videoController.customControlsEnabled;
}
Swift
func adLoader(_ adLoader: GADAdLoader, didReceive nativeAd: GADNativeAd) {
let videoController = nativeAd.mediaContent.videoController
let canShowCustomControls = videoController?.customControlsEnabled() == true
}
עיבוד של פקדי סרטונים בהתאמה אישית
אפשר להשתמש בשיטות המומלצות הבאות כדי ליצור רכיבי UI בהתאמה אישית של פקדי וידאו:
- מריצים רינדור של תצוגת אמצעי הבקרה בהתאמה אישית כצאצא של תצוגת המודעה המובנית. הגישה הזו מבטיחה שהחישובים של ניראות המודעות במדידות פתוחות מתייחסים לאמצעי הבקרה המותאמים אישית כחסימת גישה ידידותית.
- מומלץ להימנע מרינדור של שכבת-על בלתי נראית על כל תצוגת המדיה. שכבות-על חוסמות קליקים בתצוגת המדיה, ומשפיעות לרעה על הביצועים של המודעות המותאמות. במקום זאת, כדאי ליצור שכבת-על קטנה שגדולה מספיק כדי להכיל את הפקדים.
תנועות קליקים בהתאמה אישית
תנועות קליק בהתאמה אישית הן תכונה של מודעות מותאמות שמאפשרת לסורק לזהות החלקות על צפיות במודעות כקליקים על המודעות. הוא נועד לפעול עם אפליקציות שמשתמשות בתנועות החלקה לניווט בתוכן. במדריך הזה מוסבר איך מפעילים תנועות מותאמות אישית של קליקים במודעות מותאמות.
מאתחלים מופע של GADNativeAdCustomClickGestureOptions
עם כיוון ההחלקה שבחרתם. בנוסף, צריך לציין אם מקישים ייחשבו לקליק.
תנועות לחיצה בהתאמה אישית מושבתות כברירת מחדל.
כשההגדרה מושבתת, רק הקשות ייחשבו כקליקים.
כשהתכונה הזו מופעלת, תנועות החלקה ייספרו כלחיצות, ותוכלו לציין אם הקשות עדיין ייספרו כלחיצות.
בדוגמה הבאה מוסבר איך מטמיעים מחווה מותאמת אישית של החלקה ימינה, תוך שמירה על התנהגות רגילה של הקשה.
GADNativeAdCustomClickGestureOptions *swipeGestureOptions = [[GADNativeAdCustomClickGestureOptions alloc]
initWithSwipeGestureDirection:UISwipeGestureRecognizerDirectionRight
tapsAllowed:YES];
// The following sample ad unit ID has been enabled for custom click gestures
// and can be used for testing.
self.adLoader = [[GADAdLoader alloc]
initWithAdUnitID:@"ca-app-pub-3940256099942544/3986624511"
rootViewController:self
adTypes:@[ GADAdLoaderAdTypeNative ]
options:@[ swipeGestureOptions ]];
האזנה לאירועים של תנועות החלקה
כשמתועדת מחווה של החלקה עם לחיצה, ערכת Google Mobile Ads SDK מפעילה את שיטת הענקת הגישה nativeAdDidRecordSwipeGestureClick:
ב-GADNativeAdDelegate
, בנוסף לשיטת הענקת הגישה הקיימת nativeAdDidRecordClick:
.
#pragma mark - GADNativeAdDelegate implementation
// Called when a swipe gesture click is recorded.
- (void)nativeAdDidRecordSwipeGestureClick:(GADNativeAd *)nativeAd {
NSLog(@"A swipe gesture click has occurred.");
}
// Called when a swipe gesture click or a tap click is recorded, as configured in
// GADNativeAdCustomClickGestureOptions.
- (void)nativeAdDidRecordClick:(GADNativeAd *)nativeAd {
NSLog(@"A swipe gesture click or tap click has occurred.");
}
גישור
תנועות קליק בהתאמה אישית פועלות רק במודעות מותאמות שמעובדות על ידי Google Mobile Ads SDK. מקורות מודעות שמחייבים ערכות SDK של צד שלישי לעיבוד, לא מגיבים להגדרה המותאמת אישית של ההנחיות לקליקים.