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