פורמטים מותאמים אישית של מודעות מותאמות

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

טעינה של פורמטים מותאמים אישית של מודעות מותאמות

פורמטים מותאמים אישית של מודעות מותאמות נטענים באמצעות אובייקטים מסוג AdLoader. השיטה forCustomTemplateAd() מגדירה את AdLoader לטיפול בפורמטים מותאמים אישית של מודעות מותאמות. לכל פורמט מותאם אישית של מודעה מותאמת יש ערך של מזהה תבנית שמשויך אליו. חובה לציין את מזהה התבנית של פורמט המודעה המותאם אישית שרוצים שהאפליקציה תבקש מ-AdLoader. מחפשים את מזהי התבניות בממשק המשתמש של Ad Manager כדי למצוא את מזהה התבנית של פורמט המודעה המותאמת שרוצים לשלוח לגביו בקשה.

void LoadCustomNativeTemplateAd()
{
    AdLoader adLoader = new AdLoader.Builder("/21775744923/example/native")
        .forCustomNativeAd("10063170")
        .Build();
    adLoader.LoadAd(new AdRequest.Builder().Build());
}

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

void LoadCustomNativeTemplateAd()
{
    AdLoader adLoader = new AdLoader.Builder("/21775744923/example/native")
        .forCustomNativeAd("10063170")
        .forCustomNativeAd("10063171")
        .forCustomNativeAd("10063172")
        .Build();
    adLoader.LoadAd(new AdRequest.Builder().Build());
}

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

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

adLoader.onCustomNativeTemplateAdLoaded += HandleCustomNativeAdLoaded;
adLoader.OnAdFailedToLoad += HandleCustomNativeAdFailedToLoad;

השיטה HandleCustomNativeAdLoaded() מכילה את הפרמטר CustomNativeEventArgs. אפשר לגשת לפורמט המותאם אישית של המודעה המותאמת שנטענה דרך פרמטר האירוע הזה, כמו שמוצג בהמשך:

private boolean adLoaded;
private CustomNativeTemplateAd customNativeTemplateAd;
...
void HandleCustomNativeAdLoaded(object sender, CustomNativeEventArgs args)
{
    customNativeTemplateAd = args.nativeAd;
    adLoaded = true;
}

הצגת פורמטים מותאמים אישית של מודעות מותאמות

פורמטים מותאמים אישית של מודעות מותאמות תומכים בכל מספר של נכסי תמונה וטקסט שהוגדרו על ידי המשתמש. הגישה לנכסים האלה מתבצעת דרך המחלקה CustomNativeTemplateAd, שמספקת את ה-methods ‏GetTexture2D() ו-GetText() שמקבלים את מזהה המשתנה של שדה בתבנית כפרמטר.

הדוגמה הבאה להטמעה מחלצת נכסים מCustomNativeTemplateAd:

public const int NATIVE_AD_TEMPLATE_1 = 10063170;
public const int NATIVE_AD_TEMPLATE_2 = 10063171;

private boolean adLoaded;
private Texture2d mainImageTexture;
private string headline;
private CustomNativeTemplateAd customNativeTemplateAd;
...

void Update()
{
    if(adLoaded)
    {
        mainImageTexture = customNativeTemplateAd.GetTexture2D("MainImage");
        headline = customNativeTemplateAd.GetText("Headline");

        string templateId = customNativeTemplateAd.GetCustomTemplateId();
        if (templateId == NATIVE_AD_TEMPLATE_1)
        {
            ...
        }
        else if (templateId == NATIVE_AD_TEMPLATE_2)
        {
            ...
        }
        ...
        adLoaded = false;
    }
}
...

void HandleCustomNativeAdLoaded(object sender, CustomNativeEventArgs args)
{
    customNativeTemplateAd = args.nativeAd;
    adLoaded = true;
    ...
}

טיפול בקליקים ובחשיפות של פורמטים מותאמים של מודעות מותאמות

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

תיעוד חשיפות

כדי לתעד חשיפה של פורמט מותאם אישית של מודעה מותאמת, מפעילים את ה-method‏ RecordImpression() ב-CustomNativeTemplateAd המתאים:

customNativeTemplateAd.RecordImpression();

קליקים על פוסט

כדי לדווח ל-SDK על לחיצה על נכס, קוראים לשיטה PerformClick() ב-CustomNativeTemplateAd המתאים ומעבירים את שם הנכס שנלחץ. לדוגמה, אם יש לכם נכס בפורמט המותאם אישית של מודעה מובנית שנקרא MainImage ואתם רוצים לדווח על קליק על הטקסטורה שמתאימה לנכס הזה, הקוד ייראה כך:

customNativeTemplateAd.PerformClick("MainImage");

כשמדווח על קליק במודעה עם תבנית בהתאמה אישית, יש שתי תגובות אפשריות מ-SDK, והן מנסות להתקבל בסדר הזה:

  1. מאתרים את רכיב ה-Content Resolver של כתובת ה-URL של קישור העומק של המודעה ומתחילים את הראשון שפועל.
  2. פותחים דפדפן ועוברים לכתובת היעד הרגילה של המודעה.

פעולות מותאמות אישית בלחיצה

יכול להיות שתחליטו לטפל בעצמכם בפעולת הקליק בפורמטים של מודעות מותאמות אישית במקום להפנות את המשתמש לקישור עומק או לדפדפן אינטרנט. אפשר לעשות את זה באמצעות מתן Action<CustomNativeTemplateAd, string> אופציונלי בשיטה AdLoader.Builder.forCustomTemplateAd(). הגדרת פעולת לחיצה מותאמת אישית מחליפה את התנהגות הלחיצה של ה-SDK שמתוארת למעלה. זוהי דוגמה לשימוש בפעולת קליק בהתאמה אישית כדי לתעד קליק על נכס נתון:

private void LoadCustomNativeTemplateAd()
{
    AdLoader adLoader = new AdLoader.Builder("/21775744923/example/native")
        .forCustomNativeAd("10063170", HandleCustomNativeAdClicked)
        .Build();
    adLoader.onCustomNativeTemplateAdLoaded += HandleCustomNativeAdLoaded;
    adLoader.OnAdFailedToLoad += HandleCustomNativeAdFailedToLoad;
    adLoader.LoadAd(createAdRequest());
}

private void HandleCustomNativeAdClicked(CustomNativeTemplateAd customNativeTemplateAd, string assetName)
{
    Debug.Log("Native ad asset with name " + assetName + " was clicked.");
}