AdKit Unity สำหรับ DARO¶
AdKit Unity สำหรับ DARO เป็นโมดูลโฆษณา Unity ที่พัฒนาขึ้นโดยการใช้ API ของ DARO เมื่อใช้ร่วมกับ SDK หรือโมดูลแยกต่างหาก จะมีการส่งบันทึกไปยังเซิร์ฟเวอร์วิเคราะห์ ซึ่งช่วยให้คุณข้ามการวิเคราะห์โฆษณาแยกต่างหาก นอกจากนี้ การใช้ AdKit Unity สำหรับ DARO ยังช่วยให้ผู้ใช้ SDK สามารถแก้ไขข้อผิดพลาดและลดการลองผิดลองถูกที่เกิดขึ้นเมื่อใช้แพ็คเกจ Unity ที่จัดเตรียมโดย DARO
คู่มือนี้อธิบายวิธีการติดตั้ง AdKit Unity สำหรับ DARO กำหนดค่าความต้องการเบื้องต้นสำหรับแต่ละสภาพแวดล้อม Unity ของ OS และใช้ฟังก์ชันแต่ละอย่าง
การติดตั้งหรืออัปเดต¶
หากคุณกำลังใช้ AdKit สำหรับ DARO เป็นครั้งแรก ให้ติดตั้งตามลำดับต่อไปนี้
ทางเลือกหนึ่ง หากคุณต้องการอัปเดตการติดตั้ง AdKit ที่มีอยู่ ให้ ลบ เวอร์ชันที่ติดตั้งอยู่แล้วและติดตั้งเวอร์ชันล่าสุดของ AdKit สำหรับ DARO ตามลำดับต่อไปนี้
- ดาวน์โหลดและติดตั้งเวอร์ชันล่าสุดของ AdKit สำหรับ DARO.
-
ในแถบเครื่องมือ Unity ให้ไปที่ Assets > Import Package > Custom Package... เลือกไฟล์ .unitypackage และคลิก Import.
-
หลังจากการนำเข้าครบถ้วน ให้ตรวจสอบว่าไฟล์และโฟลเดอร์ที่เกี่ยวข้องกับ Hive AdKit และ DARO ได้ถูกสร้างขึ้นภายใต้โฟลเดอร์ Assets แล้ว
-
ดาวน์โหลด และติดตั้งเวอร์ชันล่าสุดของ EDM4U. EDM4U รวมอยู่ใน Hive SDK v4 หากคุณกำลังใช้ Hive SDK v4 โปรดข้ามขั้นตอนนี้.
ลบ¶
เพื่อลบ Hive AdKit สำหรับ DARO ให้ลบโฟลเดอร์ต่อไปนี้ในโปรเจกต์ Unity ของคุณ:
- Assets/HIVEAdKit
- Assets/HIVEAdKit_Example
การกำหนดค่าขั้นตอนก่อน¶
หลังจากเสร็จสิ้นการติดตั้ง AdKit สำหรับ DARO ในขั้นตอนการกำหนดค่าขั้นตอนก่อนที่จะนำไปใช้ ให้เพิ่มค่าคีย์ DARO สำหรับแต่ละระบบปฏิบัติการและตรวจสอบการตั้งค่าการสร้าง
Android¶
เพิ่มค่าคีย์ที่ดาวน์โหลดจากแดชบอร์ด DARO ลงในโปรเจกต์ Unity ที่ใช้ Android
- คัดลอกไฟล์ android-daro-key.txt ที่ดาวน์โหลดมาไปยังโฟลเดอร์ HIVEAdKit/Plugins/Android
- ไฟล์ android-daro-key.txt สามารถดาวน์โหลดได้โดยคลิกที่ปุ่มดาวน์โหลดสำหรับ 'Key File' บนหน้าจอ DARO Dashboard - Apps
- เพิ่ม
daroAppKey
ลงใน gradleTemplage.properties ดังนี้:- daroAppKey สามารถพบได้ผ่าน 'DARO App Key' บนหน้าจอ DARO Dashboard - Apps
- daroAppKey สามารถพบได้ผ่าน 'DARO App Key' บนหน้าจอ DARO Dashboard - Apps
iOS¶
เพิ่มค่าคีย์ที่ดาวน์โหลดจากแดชบอร์ด DARO ลงในโปรเจกต์ Unity ที่ใช้ iOS
- คัดลอกไฟล์ ios-daro-key.txt ที่ดาวน์โหลดมาไปยังโฟลเดอร์ HIVEAdKit/Plugins/iOS
- ไฟล์ ios-daro-key.txt สามารถดาวน์โหลดได้จาก แดชบอร์ด DARO.
- ในไฟล์ HIVEAdKit/Editor/iOSAdKitPostBuildProcessor.cs ให้ยกเลิกการแสดงความคิดเห็นในส่วน Google Admob appId และ Daro App Key และเพิ่มค่าภายในตามที่แสดงด้านล่าง:
// ตั้งค่า GADApplicationIdentifier (กรุณาติดต่อ Daro เพื่อขอ ADMOB APPID ของคุณ) //rootDict.SetString("GADApplicationIdentifier", "YOUR GOOGLE ADMOB APPID"); // ตั้งค่า DaroAppKey (กรุณาติดต่อ DARO เพื่อขอ Daro App Key ของคุณ) //rootDict.SetString("DaroAppKey", "YOUR Daro App Key");
- Google Admob appId และ Daro App Key สามารถดาวน์โหลดได้จาก แดชบอร์ด DARO.
การตรวจสอบการตั้งค่าการสร้าง iOS¶
เมื่อสร้างโปรเจกต์ iOS จะมีการสร้างเป้าหมาย UnityFramework ที่ทำงานเป็น DynamicFramework
-
การกำหนดค่า EDM4U (ตาม 1.2.179) ใน การตั้งค่า iOS Resolver ของ Unity (เมนู: Assets > External Dependency Manager > iOS Resolver > Settings), ตรวจสอบให้แน่ใจว่าการตั้งค่า build static_framework ถูกกำหนดไว้
-
สร้างโปรเจกต์ หลังจากการสร้างเสร็จสิ้น ให้เปิด Podfile จากเส้นทางรากโปรเจกต์ที่สร้างขึ้นเพื่อตรวจสอบการตั้งค่าไฟล์.
Warning
ก่อนที่จะสร้างบริการในผลิตภัณฑ์ที่ใช้ AdKit Unity คุณต้องลบโฟลเดอร์ Assets/HIVEAdKit_Example ออก HIVEAdKit ตัวอย่างการตั้งค่าอาจรวมอยู่ด้วย
การกำหนดค่าของ DARO Proguard¶
กฎ Proguard จะถูกรวมอยู่ในไฟล์ AAR ของไลบรารีและจัดจำหน่าย ดังนั้นจึงถูกกำหนดค่าโดยอัตโนมัติโดยไม่ต้องตั้งค่าแยกต่างหาก.
คู่มือการใช้งาน¶
ส่วนนี้ให้คำแนะนำเกี่ยวกับการตั้งค่าและวิธีการเรียก API สำหรับการใช้ AdKit Unity สำหรับฟีเจอร์ DARO
การเริ่มต้น AdKit¶
- หากเกมของคุณมุ่งเป้าไปที่ภูมิภาคยุโรปและสหราชอาณาจักร (EEA & UK) คุณต้องเริ่มต้น AdKit หลังจากเรียกใช้ API
ShowConsentUI
เพื่อแสดงป๊อปอัปความยินยอม GDPR หากคุณให้บริการเฉพาะในประเทศ ให้เรียกใช้ APIHIVEAdKit.Initialize
เพื่อดำเนินการเริ่มต้นโดยตรง.
ฟีเจอร์ API ทั้งหมดที่ HIVEAdKit ให้บริการต้องถูกเรียกจาก เธรดหลัก ของ Unity.
using hive.adkit.daro;
// Call GDPR popup
public void ShowGDPR(string noticeId)
{
HIVEAdKit.ShowConsentUI(noticeId, () =>
{
initSdk();
});
}
// Hive AdKit initialization
public void initSdk()
{
HIVEAdKit.Initialize(isSuccess =>
{
if (isSuccess)
Debug.Log("AdKit SDK initialization successful!");
else
Debug.Log("AdKit SDK initialization failed!");
});
}
การใช้ callback¶
ในการใช้ฟังก์ชัน callback คุณต้องเรียก HIVEAdKit.InitPlugin
เพื่อลงทะเบียน AdKitCallbackManager เป็น GameObject.
เรียกสิ่งนี้ในบล็อกโค้ด Start เมื่อแอปเริ่มทำงาน
using hive.adkit.daro;
void Start()
{
HIVEAdKit.InitPlugin(); // Create game object for Hive AdKit callback registration
}
การตั้งค่าข้อมูลเพิ่มเติม¶
คุณสามารถตั้งค่าข้อมูลเพิ่มเติมได้ โค้ดการใช้งานมีดังนี้:
using hive.adkit.daro;
[Serializable]
public class SendInfo
{
public int level;
public int gold;
}
SendInfo addtionalInfo = new SendInfo();
public void SetAdditionalInfo()
{
addtionalInfo.level = 1;
addtionalInfo.gold = 100;
// Send as JSON Object format
HIVEAdKit.SetAdditionalInfo(JsonUtility.ToJson(addtionalInfo));
}
ฟีเจอร์โฆษณาที่ได้รับรางวัล¶
มีฟีเจอร์โฆษณาที่ได้รับรางวัลซึ่งให้รางวัลเมื่อดูโฆษณาเป็นระยะเวลาหนึ่งหรือมากกว่า สามารถโหลดโฆษณาได้เพียงหนึ่งรายการในแต่ละครั้ง รหัสในการนำฟีเจอร์โฆษณาที่ได้รับรางวัลไปใช้มีดังนี้:
using hive.adkit.daro;
private HIVEAdKit.RewardVideo RewardVideoAd = null;
public void InitRewardedAd()
{
// Set Event Callback
EventHandlers eventHandlers = new EventHandlers.Builder()
.OnAdLoaded(OnRewardVideoAdLoadedCB)
.OnAdOpening(OnRewardVideoAdOpeningCB)
.OnAdClosed(OnRewardVideoAdClosedCB)
.OnAdFailed(OnRewardVideoAdFailedCB)
.OnAdReward(OnRewardVideoAdRewardCB)
.OnAdClick(OnRewardVideoAdClickCB)
.OnAdPaidEvent(OnRewardVideoAdPaidEventCB)
.Build();
// Create RewardVideoAd Instance
RewardVideoAd = HIVEAdKit.RewardVideo.Initialize(rewardVideoUnitId, eventHandlers);
}
public void LoadRewardedAd()
{
// Load RewardVideoAd
HIVEAdKit.RewardVideo.Load(RewardVideoAd, "Unity-RewardVideo-Load-AdPlacementInfo");
}
public void ShowRewardedAd()
{
// Show RewardVideoAd
if( HIVEAdKit.RewardVideo.IsLoaded(RewardVideoAd) ) {
HIVEAdKit.RewardVideo.Show(RewardVideoAd, "Unity-RewardVideo-Show-AdPlacementInfo");
}
}
public void DestroyRewardedAd()
{
// Destroy RewardVideoAd
HIVEAdKit.RewardVideo.Destroy(RewardVideoAd);
RewardVideoAd = null;
}
ฟีเจอร์โฆษณาแบบแทรก¶
ให้ฟีเจอร์โฆษณาแบบแทรกที่ครอบคลุมทั้งหน้าจอ รหัสการใช้งานมีดังนี้:
using hive.adkit.daro;
private HIVEAdKit.Interstitial InterstitialAd = null;
public void InitRewardedAd(string unitId)
{
// Set Event Callback
EventHandlers eventHandlers = new EventHandlers.Builder()
.OnAdLoaded(OnInterstitialAdLoadedCB)
.OnAdOpening(OnInterstitialAdOpeningCB)
.OnAdClosed(OnInterstitialAdClosedCB)
.OnAdFailed(OnInterstitialAdFailedCB)
.OnAdClick(OnInterstitialAdClickCB)
.OnAdPaidEvent(OnInterstitialAdPaidEventCB)
.Build();
// Create InterstitialAd Instance
InterstitialAd = HIVEAdKit.Interstitial.Initialize(unitId, eventHandlers);
}
public void LoadInterstitialAd()
{
// Load InterstitialAd
HIVEAdKit.Interstitial.Load(InterstitialAd, "Unity-Interstitial-Load-AdPlacementInfo");
}
public void ShowInterstitialAd()
{
// Show InterstitialAd
if( HIVEAdKit.Interstitial.IsLoaded(InterstitialAd) ) {
HIVEAdKit.Interstitial.Show(InterstitialAd, "Unity-Interstitial-Show-AdPlacementInfo");
}
}
public void DestroyInterstitialAd()
{
// Destroy InterstitialAd
HIVEAdKit.Interstitial.Destroy(InterstitialAd);
InterstitialAd = null;
}
ฟีเจอร์โฆษณาแบนเนอร์¶
ให้ฟีเจอร์โฆษณาแบนเนอร์ที่ใช้พื้นที่บางส่วนของหน้าจอ คุณสามารถปรับตำแหน่งแบนเนอร์ไปที่ด้านบนหรือล่างของหน้าจอโดยการป้อน BannerPosition
.
โฆษณาแบนเนอร์จะไม่ได้รับการเรียกกลับ OnAdClosed()
using hive.adkit.daro;
private HIVEAdKit.Banner BannerAd = null;
public void InitBannerAd(string unitId)
{
// Set Event Callback
EventHandlers eventHandlers = new EventHandlers.Builder()
.OnAdLoaded(OnBannerAdLoadedCB)
.OnAdFailed(OnBannerAdFailedCB)
.OnAdClick(OnBannerAdClickCB)
.OnAdPaidEvent(OnBannerAdPaidEventCB)
.Build();
BannerAd = HIVEAdKit.Banner.Initialize(unitId, BannerPosition.Bottom, eventHandlers);
}
public void LoadBannerAd()
{
// Automatic Load & Show BannerAd
HIVEAdKit.AdaptiveBanner.Load(BannerAd, "Unity-AdaptiveBanner-Load-AdPlacementInfo");
}
public void DestroyBannerAd()
{
// Destroy BannerAd
HIVEAdKit.Banner.Destroy(BannerAd);
BannerAd = null;
}