מודעות מותאמות

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

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

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

בדף הזה מוסבר איך להשתמש ב-SDK כדי לטעון מודעות מותאמות

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

ביצוע בדיקות תמיד באמצעות מודעות בדיקה

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

הדרך הקלה ביותר לטעון מודעות בדיקה היא באמצעות המזהה הייעודי של יחידת המודעות לבדיקה עבור מודעות מותאמות ב-iOS:

/6499/example/native

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

למידע נוסף על אופן הפעולה של מודעות בדיקה ב-Google Mobile Ads SDK, קראו את המאמר מודעות בדיקה.

טעינת מודעות

מודעות מותאמות נטענות באמצעות המחלקה GADAdLoader, ששולחת הודעות למשתמשים הרלוונטיים בהתאם לפרוטוקול GADAdLoaderDelegate.

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

הפעלה של טוען המודעות

כדי לטעון מודעה, צריך להפעיל את הכלי לטעינת מודעות. הקוד הבא מדגים איך לאתחל GADAdLoader:

Swift

adLoader = GADAdLoader(adUnitID: "/6499/example/native",
    rootViewController: self,
    adTypes: [ .native ],
    options: [ ... ad loader options objects ... ])
adLoader.delegate = self

Objective-C

self.adLoader = [[GADAdLoader alloc]
      initWithAdUnitID:@"/6499/example/native"
    rootViewController:rootViewController
               adTypes:@[ GADAdLoaderAdTypeNative ]
               options:@[ ... ad loader options objects ... ]];
self.adLoader.delegate = self;

תצטרכו מזהה של יחידת מודעות (אפשר להשתמש במזהה הבדיקה), קבועים שיועברו במערך adTypes כדי לציין את הפורמטים המותאמים שרוצים לבקש, ואת האפשרויות שרוצים להגדיר בפרמטר options. רשימת הערכים האפשריים לפרמטר options מופיעה בדף הגדרת אפשרויות למודעות מותאמות.

המערך adTypes צריך להכיל אחד או יותר מהקבועים הבאים :

הטמעת המשתמש שהוקצה לטעינת המודעות

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

Swift

public func adLoader(_ adLoader: GADAdLoader,
            didReceive nativeAd: GADNativeAd)

Objective-C

- (void)adLoader:(GADAdLoader *)adLoader
    didReceiveNativeAd:(GADNativeAd *)nativeAd;

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

Swift

func adLoader(_ adLoader: GADAdLoader,
  Receive customNativeAd: GADCustomNativeAd)

Objective-C

- (void)adLoader:(GADAdLoader *)adLoader
    didReceiveCustomNativeAd:(GADCustomNativeAd *) customNativeAd;

בקשה להצגת מודעות

לאחר האתחול של GADAdLoader, קוראים לשיטה loadRequest: שלו כדי לבקש מודעה:

Swift

adLoader.load(GAMRequest())

Objective-C

[self.adLoader loadRequest:[GAMRequest request]];

השיטה loadRequest: ב-GADAdLoader מקבלת את אותם אובייקטים GAMRequest כמו מודעות באנר ומודעות מעברון. ניתן לך להשתמש באובייקטים של בקשות כדי להוסיף מידע על מיקוד, בדיוק כמו עם סוגי מודעות אחרים.

החלטה מתי הטעינה הסתיימה

אחרי שאפליקציה מבצעת קריאה אל loadRequest:, היא יכולה לקבל את תוצאות הבקשה באמצעות הקריאות הבאות:

בקשה למודעה יחידה תוביל לקריאה אחת לאחת מהשיטות האלה.

טיפול בבקשות שנכשלו

הפרוטוקולים שלמעלה מרחיבים את הפרוטוקול GADAdLoaderDelegate, שמגדיר הודעה שנשלחת כשמודעות לא נטענות.

Swift

public func adLoader(_ adLoader: GADAdLoader,
    didFailToReceiveAdWithError error: NSError)

Objective-C

- (void)adLoader:(GADAdLoader *)adLoader
    didFailToReceiveAdWithError:(NSError *)error;

קבלת התראות על אירועים של מודעות מותאמות

על מנת לקבל התראות על אירועים שקשורים לאינטראקציות עם המודעה המותאמת, צריך להגדיר את מאפיין ההאצלה של המודעה המותאמת:

Swift

nativeAd.delegate = self

Objective-C

nativeAd.delegate = self;

לאחר מכן מטמיעים את GADNativeAdDelegate כדי לקבל את הקריאות הבאות להענקת גישה:

Swift

func nativeAdDidRecordImpression(_ nativeAd: GADNativeAd) {
  // The native ad was shown.
}

func nativeAdDidRecordClick(_ nativeAd: GADNativeAd) {
  // The native ad was clicked on.
}

func nativeAdWillPresentScreen(_ nativeAd: GADNativeAd) {
  // The native ad will present a full screen view.
}

func nativeAdWillDismissScreen(_ nativeAd: GADNativeAd) {
  // The native ad will dismiss a full screen view.
}

func nativeAdDidDismissScreen(_ nativeAd: GADNativeAd) {
  // The native ad did dismiss a full screen view.
}

func nativeAdWillLeaveApplication(_ nativeAd: GADNativeAd) {
  // The native ad will cause the app to become inactive and
  // open a new app.
}

Objective-C

- (void)nativeAdDidRecordImpression:(GADNativeAd *)nativeAd {
  // The native ad was shown.
}

- (void)nativeAdDidRecordClick:(GADNativeAd *)nativeAd {
  // The native ad was clicked on.
}

- (void)nativeAdWillPresentScreen:(GADNativeAd *)nativeAd {
  // The native ad will present a full screen view.
}

- (void)nativeAdWillDismissScreen:(GADNativeAd *)nativeAd {
  // The native ad will dismiss a full screen view.
}

- (void)nativeAdDidDismissScreen:(GADNativeAd *)nativeAd {
  // The native ad did dismiss a full screen view.
}

- (void)nativeAdWillLeaveApplication:(GADNativeAd *)nativeAd {
  // The native ad will cause the app to become inactive and
  // open a new app.
}

שיטות מומלצות

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

  • אפליקציות שנעשה בהן שימוש במודעות מותאמות ברשימה צריכות לשמור מראש את רשימת המודעות.

  • כשמקדמים מודעות במטמון, צריך לנקות את המטמון ולטעון אותן מחדש לאחר שעה.

  • לא צריך להתקשר שוב אל loadRequest: ב-GADAdLoader עד לסיום הטעינה של הבקשה הקודמת, כפי שמצוין ב-adLoaderDidFinishLoading:.

הצגת המודעה

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