ผู้เผยแพร่โฆษณา 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("/21775744923/example/native")
.ForCustomNativeAd("10063170")
.Build();
adLoader.LoadAd(new AdRequest.Builder().Build());
}
เนื่องจากตั้งค่าหน่วยโฆษณาเดียวให้แสดงโฆษณาเนทีฟที่กำหนดเองได้มากกว่า 1 รูปแบบ ForCustomNativeAd()
จึงเรียกใช้ได้หลายครั้งโดยใช้รหัสรูปแบบที่แตกต่างกัน เพื่อเตรียมเครื่องมือโหลดโฆษณาสำหรับโฆษณาเนทีฟที่กำหนดเองซึ่งอาจมีมากกว่า 1 รูปแบบ
เหตุการณ์โฆษณาเนทีฟที่กำหนดเอง
คลาส AdLoader
จะให้เหตุการณ์โฆษณาประเภท EventHandler
เพื่อแจ้งให้คุณทราบ
เกี่ยวกับวงจรของโฆษณาเนทีฟที่กำหนดเอง ตัวอย่างด้านล่างแสดงวิธี
ลงทะเบียนเหตุการณ์โฆษณาเนทีฟที่กำหนดเองใน AdLoader
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 ตามลำดับต่อไปนี้
ค้นหาตัวแก้ไขเนื้อหาสำหรับ URL ของ Deep Link ของโฆษณา แล้วเริ่มตัวแก้ไขแรก ที่แก้ไขได้
เปิดเบราว์เซอร์แล้วไปที่ URL ปลายทางแบบเดิมของโฆษณา
หากต้องการจัดการการกระทําเมื่อคลิกสําหรับรูปแบบโฆษณาเนทีฟที่กําหนดเองด้วยตนเอง
แทนที่จะนําผู้ใช้ไปยัง Deep Link หรือเว็บเบราว์เซอร์ ให้ระบุ Action<CustomNativeAd, string>
ที่ไม่บังคับในเมธอด AdLoader.Builder.ForCustomNativeAd()
การตั้งค่าการคลิกที่กำหนดเองนี้จะลบล้างลักษณะการทำงานของการคลิกของ SDK ต่อไปนี้เป็นตัวอย่างที่ใช้
การคลิกที่กำหนดเองเพื่อบันทึกการคลิกสำหรับชิ้นงานที่กำหนด
private void LoadCustomNativeAd()
{
AdLoader adLoader = new AdLoader.Builder("/21775744923/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.");
}