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

בעלי אתרים ב-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. מאתרים את רכיב התוכן לפתרון בעיות של כתובת ה-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.");
}