รูปแบบโฆษณาเนทีฟที่กำหนดเอง

ผู้เผยแพร่โฆษณา Google Ad Manager สามารถสร้างรูปแบบโฆษณาเนทีฟของตนเองได้โดยการกำหนด รายการชิ้นงานที่กำหนดเอง รูปแบบโฆษณาเนทีฟที่กำหนดเอง เหล่านี้ใช้กับโฆษณาที่สงวนไว้ได้ รูปแบบโฆษณาเนทีฟที่กำหนดเองช่วยให้ผู้เผยแพร่โฆษณาส่งข้อมูลรูปภาพและสตริงที่กำหนดเองไปยังแอปได้ ข้อมูลนี้แสดงด้วยออบเจ็กต์ CustomNativeTemplateAd

โหลดรูปแบบโฆษณาเนทีฟที่กำหนดเอง

ระบบจะโหลดรูปแบบโฆษณาเนทีฟที่กำหนดเองโดยใช้ออบเจ็กต์ AdLoader เมธอด forCustomTemplateAd() จะกำหนดค่า AdLoader เพื่อ จัดการรูปแบบโฆษณาเนทีฟที่กำหนดเอง รูปแบบโฆษณาเนทีฟที่กำหนดเองแต่ละรูปแบบจะมีค่ารหัสเทมเพลตที่เชื่อมโยงอยู่ คุณต้องระบุเทมเพลต รหัสของรูปแบบโฆษณาเนทีฟที่กำหนดเองที่แอปต้องการให้ AdLoader ร้องขอ ค้นหารหัสเทมเพลต ใน UI ของ Ad Manager เพื่อหารหัสเทมเพลตของรูปแบบโฆษณาเนทีฟที่คุณ ต้องการขอ

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

เนื่องจากตั้งค่าหน่วยโฆษณาเดียวให้แสดงเทมเพลตครีเอทีฟโฆษณาได้มากกว่า 1 รายการ forCustomTemplateAd() จึงเรียกใช้ได้หลายครั้งด้วยรหัสเทมเพลตที่แตกต่างกัน เพื่อเตรียม Adloader สำหรับรูปแบบโฆษณาเนทีฟที่กำหนดเองที่เป็นไปได้มากกว่า 1 รูปแบบ ข้อมูลโค้ดด้านล่างแสดงวิธีเตรียม 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 ซึ่งมีเมธอด 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

บันทึกการแสดงผล

หากต้องการบันทึกการแสดงผลสำหรับรูปแบบโฆษณาเนทีฟที่กำหนดเอง ให้เรียกเมธอด RecordImpression() ใน CustomNativeTemplateAd ที่เกี่ยวข้อง

customNativeTemplateAd.RecordImpression();

รายงานการคลิก

หากต้องการรายงานไปยัง SDK ว่ามีการคลิกชิ้นงาน ให้เรียกใช้เมธอด PerformClick() ใน CustomNativeTemplateAd ที่เกี่ยวข้อง และส่งชื่อชิ้นงานที่ คลิก เช่น หากคุณมีชิ้นงานในรูปแบบโฆษณาเนทีฟที่กำหนดเองชื่อ "MainImage" และต้องการ รายงานการคลิกพื้นผิวที่สอดคล้องกับชิ้นงานนั้น โค้ดจะมีลักษณะดังนี้

customNativeTemplateAd.PerformClick("MainImage");

เมื่อมีการรายงานการคลิกในโฆษณาเทมเพลตที่กำหนดเอง SDK จะตอบกลับได้ 2 แบบตามลำดับต่อไปนี้

  1. ค้นหาตัวแก้ไขเนื้อหาสำหรับ URL ของ Deep Link ของโฆษณา แล้วเริ่มตัวแก้ไขแรก ที่แก้ไขได้
  2. เปิดเบราว์เซอร์แล้วไปที่ URL ปลายทางแบบเดิมของโฆษณา

การกระทำเมื่อคลิกที่กำหนดเอง

คุณอาจตัดสินใจที่จะจัดการการคลิกด้วยตนเองสำหรับรูปแบบโฆษณาเนทีฟที่กำหนดเอง แทนที่จะนำผู้ใช้ไปยัง Deep Link หรือเว็บเบราว์เซอร์ โดยทำได้ด้วยการระบุ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.");
}