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

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

โหลดโฆษณาเนทีฟที่กําหนดเอง

ระบบจะโหลดโฆษณาเนทีฟที่กําหนดเองโดยใช้ออบเจ็กต์ AdLoader เมธอด ForCustomNativeAd() จะกําหนดค่า AdLoader เพื่อจัดการโฆษณาเนทีฟที่กําหนดเอง สําหรับพารามิเตอร์นี้ มี 2 พารามิเตอร์

  • formatId ของโฆษณาที่กําหนดเองที่ AdLoader ควรขอ รูปแบบโฆษณาเนทีฟที่กําหนดเองแต่ละรายการมีค่ารหัสรูปแบบที่เชื่อมโยงอยู่ พารามิเตอร์นี้เป็นตัวระบุรูปแบบที่แอปต้องการให้ AdLoader ขอ
  • Action<CustomNativeAd, string> ที่ไม่บังคับซึ่งจะเรียกใช้ได้เมื่อผู้ใช้คลิกโฆษณา

ระบบจะโหลดโฆษณาเนทีฟที่กําหนดเองผ่านคลาส AdLoader ซึ่งมีคลาส AdLoader.Builder ของตัวเองสําหรับปรับแต่งในระหว่างการสร้าง เมธอด ForCustomNativeAd() จะกําหนดค่า AdLoader เพื่อจัดการโฆษณาเนทีฟ

void LoadCustomNativeAd()
{
    AdLoader adLoader = new AdLoader.Builder("/6499/example/native")
            .ForCustomNativeAd("10063170")
            .Build();
    adLoader.LoadAd(new AdRequest.Builder().Build());
}

เนื่องจากระบบตั้งค่าหน่วยโฆษณา 1 รายการให้แสดงรูปแบบโฆษณาเนทีฟที่กําหนดเองได้มากกว่า 1 รูปแบบ คุณจึงเรียกใช้ ForCustomNativeAd() ได้หลายครั้งด้วยรหัสรูปแบบต่างๆ เพื่อเตรียมตัวโหลดโฆษณาให้กับรูปแบบโฆษณาเนทีฟที่กําหนดเองได้มากกว่า 1 รูปแบบ

เหตุการณ์โฆษณาเนทีฟที่กําหนดเอง

คลาส AdLoader มีเหตุการณ์ของโฆษณาประเภท EventHandler เพื่อแจ้งให้คุณทราบเกี่ยวกับวงจรชีวิตของโฆษณาเนทีฟที่กําหนดเอง ตัวอย่างด้านล่างแสดงวิธีลงทะเบียนสําหรับเหตุการณ์โฆษณาเนทีฟที่กําหนดเองในตัวโหลดโฆษณา

private AdLoader adLoader;
adLoader.OnCustomNativeAdLoaded += HandleCustomNativeAdLoaded;
adLoader.OnAdFailedToLoad += HandleCustomNativeAdFailedToLoad;

เมธอด HandleCustomNativeAdLoaded() มีพารามิเตอร์ CustomNativeAdEventArgs คุณจะเข้าถึงโฆษณาเนทีฟที่กําหนดเองที่โหลดผ่านพารามิเตอร์เหตุการณ์นี้ได้ ดังที่แสดงด้านล่างนี้

void HandleCustomNativeAdLoaded(object sender, CustomNativeAdEventArgs args)
{
    this.customNativeAd = args.nativeAd;
}

เมธอด HandleCustomNativeAdFailedToLoad() มีพารามิเตอร์ AdFailedToLoadEventArgs คุณอาจเข้าถึงข้อความแสดงข้อผิดพลาดได้โดยเรียกใช้เมธอด GetMessage ในช่อง LoadAdError ดังที่แสดงด้านล่าง

void HandleCustomNativeAdFailedToLoad(object sender, AdFailedToLoadEventArgs args)
{
    string message = args.LoadAdError.GetMessage();
    Debug.Log("Ad Loader fail event received with message: " + message);
}

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

โฆษณาเนทีฟที่กําหนดเองรองรับเนื้อหารูปภาพและข้อความที่ผู้ใช้กําหนดจํานวนเท่าใดก็ได้ ชิ้นงานเหล่านี้เข้าถึงได้ผ่านคลาส CustomNativeAd ซึ่งมีเมธอด GetTexture2D() และ GetText() ที่ใช้รหัสตัวแปรของช่องรูปแบบเป็นพารามิเตอร์

ตัวอย่างการใช้งานที่เข้าถึงเนื้อหาจากโฆษณาเนทีฟที่กําหนดเองมีดังนี้

private bool adLoaded;
private Texture2D mainImageTexture;
private string headline;
private CustomNativeAd customNativeAd;
...

void Update()
{
    if(adLoaded)
    {
        mainImageTexture = customNativeAd.GetTexture2D("MainImage");
        headline = customNativeAd.GetText("Headline");
        adLoaded = false;
    }
}
...
void HandleCustomNativeAdLoaded(object sender, CustomNativeAdEventArgs args)
{
    customNativeAd = args.nativeAd;
    adLoaded = true;
    ...
}

จัดการการแสดงผลและการคลิกโฆษณาเนทีฟที่กําหนดเอง

เมื่อใช้โฆษณาเนทีฟแบบกําหนดเอง แอปของคุณจะรับผิดชอบการบันทึกการแสดงผลและการรายงานเหตุการณ์การคลิกไปยัง SDK

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

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

customNativeAd.RecordImpression();

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

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

customNativeAd.PerformClick("MainImage");

ตอบสนองต่อการคลิกที่กําหนดเอง

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

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

  2. เปิดเบราว์เซอร์และไปที่ URL ปลายทางดั้งเดิมของโฆษณา

หากต้องการจัดการการดําเนินการกับการคลิกของรูปแบบโฆษณาเนทีฟที่กําหนดเอง เองแทนที่จะนําผู้ใช้ไปยัง Deep Link หรือเว็บเบราว์เซอร์ ให้ระบุ Action<CustomNativeAd, string> ที่ไม่บังคับในเมธอด AdLoader.Builder.ForCustomNativeAd() การตั้งค่าการกระทําคลิกที่กําหนดเองนี้หมายความว่าคุณจะลบล้างพฤติกรรมการคลิกของ SDK&#39 ด้านล่างนี้เป็นตัวอย่างที่ใช้การคลิกที่กําหนดเองเพื่อบันทึกการคลิกสําหรับเนื้อหาหนึ่งๆ

private void LoadCustomNativeAd()
{
    AdLoader adLoader = new AdLoader.Builder("/6499/example/native")
            .ForCustomNativeAd("10063170", HandleCustomNativeAdClicked)
            .Build();
    adLoader.OnCustomNativeAdLoaded += HandleCustomNativeAdLoaded;
    adLoader.LoadAd(createAdRequest());
}

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