AdKit Unity for DARO¶
AdKit Unity for DARO 是使用 DARO API 開發的 Unity 廣告模組。與 SDK 或獨立模組搭配使用時,log 會傳送至 Analytics 伺服器,因此不需另外進行廣告分析。此外,它還可協助 Hive SDK 使用者解決套用 DARO 所提供 Unity 套件時發生的錯誤,並減少反覆嘗試。
本指南說明 AdKit Unity for DARO 的安裝方式、各作業系統 Unity 環境的預先設定方式,以及各項功能的使用方式。
安裝或更新¶
如果您是第一次使用 AdKit for DARO,請按照以下順序進行安裝。
或者,如果您想要更新現有的 AdKit 安裝,請刪除現有的安裝版本,然後按照以下順序安裝最新版本的 AdKit for DARO。
- 下載並安裝最新版本的 AdKit 用於 DARO。
-
在 Unity 工具欄中,轉到 資產 > 導入包 > 自定義包...,選擇 .unitypackage 文件,然後點擊 導入。
-
下載並安裝最新版本的 EDM4U。 EDM4U 包含在 Hive SDK v4 中。如果您正在使用 Hive SDK v4,請跳過此步驟。
刪除¶
要删除 Hive AdKit for DARO,请删除您 Unity 项目中的以下文件夹:
- 資產/HIVEAdKit
- 資產/HIVEAdKit_範例
先決條件配置¶
安裝 AdKit for DARO 後,請新增各作業系統所需的 DARO 金鑰值,並檢查建置設定。
Android¶
將從 DARO 控制面板下載的金鑰值新增至 Android Unity 專案。
- 將下載的 android-daro-key.txt 檔案複製到 HIVEAdKit/Plugins/Android 資料夾。
- 在 DARO 控制面板 - Apps 頁面中,按一下 'Key File' 下的 Download 即可下載 android-daro-key.txt 檔案。
- 在 gradleTemplate.properties 中新增
daroAppKey,如下所示。- 可在 DARO 控制面板 - Apps 頁面的 'DARO App Key' 中查看
daroAppKey。
- 可在 DARO 控制面板 - Apps 頁面的 'DARO App Key' 中查看
iOS¶
將從 DARO 控制面板下載的金鑰值新增至 iOS Unity 專案。
- 將下載的 ios-daro-key.txt 檔案複製到 HIVEAdKit/Plugins/iOS 資料夾。
- 可從 DARO 控制面板下載 ios-daro-key.txt 檔案。
- 在 HIVEAdKit/Editor/iOSAdKitPostBuildProcessor.cs 檔案中,依照以下範例取消
Google AdMob appId與Daro App Key的註解,然後輸入相應值。// Set GADApplicationIdentifier (Please contact Daro for your own ADMOB APPID) //rootDict.SetString("GADApplicationIdentifier", "YOUR GOOGLE ADMOB APPID"); // Set DaroAppKey (Please contact DARO for your own Daro App Key) //rootDict.SetString("DaroAppKey", "YOUR Daro App Key");- 可從 DARO 控制面板下載
Google AdMob appId與Daro App Key。
- 可從 DARO 控制面板下載
檢查 iOS 建置設定¶
建置 iOS 專案時,會建立以 Dynamic Framework 方式運作的 UnityFramework target。
-
設定 EDM4U(以 1.2.179 為準)。 在 Unity 的 iOS Resolver Settings(Assets > External Dependency Manager > iOS Resolver > Settings)中,確認已設定 static_framework 建置。
-
建置專案。建置完成後,在產生專案的根路徑中開啟 Podfile 並檢查設定。
Warning
建置套用 AdKit Unity 的正式服務之前,請務必刪除 Assets/HIVEAdKit_Example 資料夾,否則可能會包含 HIVEAdKit Example 設定。
DARO Proguard 配置¶
Proguard 規則包含在程式庫 AAR 檔案中,因此不需另外設定即可自動套用。
使用指南¶
本節說明使用 AdKit Unity for DARO 功能所需的設定方式與 API 呼叫方式。
AdKit 初始化¶
- 如果應用程式以歐洲與英國(EEA & UK)地區為目標,請呼叫
ShowConsentUIAPI 顯示 GDPR 同意彈出視窗,再初始化 AdKit。如果僅在國內提供服務,請呼叫HIVEAdKit.InitializeAPI 直接初始化。
如下方範例程式碼所示,HIVEAdKit類別提供的所有 API 都必須從 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!");
});
}
使用回調¶
要使用回調函數,您必須調用 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.Banner.Load(BannerAd, "Unity-Banner-Load-AdPlacementInfo");
}
public void DestroyBannerAd()
{
// Destroy BannerAd
HIVEAdKit.Banner.Destroy(BannerAd);
BannerAd = null;
}
DARO應用範例¶
Planet Explore使用DARO廣告模組,對橫幅廣告和插播廣告進行優化投放。下載Planet Explore,直接查看DARO廣告的實際應用案例。





