將 Unity 廣告與中介服務整合

本指南將說明如何使用 Google Mobile Ads SDK,透過中介服務載入並顯示 Unity 廣告,並涵蓋刊登序列整合。我們會說明如何將 Unity Ads 新增至廣告單元的中介服務設定,以及如何將 Unity Ads SDK 和轉接程式整合到應用程式中。 Unity

支援的整合項目和廣告格式

Unity Ads 的 Ad Manager 中介服務轉接程式具備下列功能:

整合
出價
瀑布
格式
橫幅廣告
插頁式
已獲得獎勵

需求條件

  • 最新版 Google Mobile Ads SDK
  • Unity 4 以上版本
  • 如要在 Android 上部署應用程式,請執行下列動作:
    • Android API 級別 21 以上
  • 如何在 iOS 上部署
    • 12.0 以上版本的 iOS 部署目標
  • 使用 Google Mobile Ads SDK 設定 Unity 的有效專案。詳情請參閱開始使用
  • 完成中介服務 入門指南

步驟 1:在 Unity Ads UI 中調整設定

註冊或登入 Unity Ads。

建立專案

Unity Ads 資訊主頁中,前往「Projects」(專案),然後按一下「Create Project」(建立專案)

填寫表單然後按一下「Create Project」(建立專案) 來新增專案。

依序前往「營利」 >「開始使用」,然後按一下「開始使用」

在「專案設定」互動視窗中,選取「我打算使用中介服務」和「中介服務合作夥伴專用的 Google Admob」,然後點選「下一步」

選取廣告設定,然後點選「下一步」

填寫表單,然後按一下「Add Project」

記下「遊戲 ID」

建立廣告單元

依序前往「營利」 >「廣告單元」,然後按一下「新增廣告單元」

輸入「廣告單元名稱」,然後選取您的「平台」和「廣告格式」

Android

iOS

最後,按一下「建立」來儲存廣告單元。

新增刊登位置

建立專案後,請依序點選「營利」 >「刊登位置」。如要 建立新的刊登位置,請按一下廣告單元的「新增刊登位置」

填寫必要的詳細資料,然後按一下「新增刊登位置」

記下「刊登位置 ID」

Android

iOS

擷取憑證

除了「遊戲 ID」和「刊登位置 ID」,您還需要 Unity Ads API 金鑰機構組織核心 ID,才能設定Ad Manager 廣告單元 ID。

依序前往「營利」 >「設定」 >「API 管理」,並記下「Monetize Stats API Access Key」(營利統計資料 API 存取金鑰)。

接著,依序前往「營利」 >「機構設定」,並記下「機構核心 ID」

開啟測試模式

您可以在 Unity Ads 資訊主頁啟用測試模式。在專案設定下方,選取「Testing」分頁標籤。

如要強制執行應用程式的測試模式,請按一下各個平台的編輯按鈕,勾選「覆寫用戶端測試模式」,然後選取「所有裝置的強制測試模式開啟 (例如使用測試廣告)」

Android

iOS

或者,您也可以點選「Add Test Device」按鈕,為特定裝置啟用測試模式。

填寫表單然後按一下「Save」

步驟 2:在 Ad Manager 使用者介面中設定 Unity Ads 需求

調整廣告單元中介服務設定

Android

如需操作說明,請參閱 Android

iOS

相關操作說明請參閱 iOS

新增 Unity Ads 至 GDPR 和美國州級法規廣告合作夥伴名單

請按照 GDPR 設定美國州級法規設定 ,在 Ad Manager UI 和美國州級法規廣告合作夥伴清單中新增 Unity Ads

步驟 3:匯入 Unity Ads SDK 和轉接程式

變更記錄中的下載連結,下載最新版的 Unity Ads 專用 Google 行動廣告中介服務外掛程式,然後從 zip 檔案擷取 GoogleMobileAdsUnityAdsMediation.unitypackage

在 Unity 專案編輯器中,依序選取「Assets」>「Import Package」>「Custom Package」,然後選擇下載的 GoogleMobileAdsUnityAdsMediation.unitypackage 檔案。確認已選取所有檔案,然後按一下「匯入」

接著,依序選取「Assets」>「Play Services Resolver」>「Android Resolver」>「Force Resolve」。Unity Play 服務解析器程式庫會從頭開始執行依附元件解析作業,並將宣告的依附元件複製到 Unity 應用程式的 Assets/Plugins/Android 目錄中。

搭配 Unity 廣告服務使用 Unity 轉接程式

如果您是透過「服務」窗格、Package Manager 或 Asset Store 整合 Unity Ads SDK,表示應用程式中已有 Unity Ads Android SDK 的副本。為避免在建構 Android 時出現重複符號的問題,請移除 Unity Ads SDK 的參照。

請更新 Assets/GoogleMobileAds/Editor/UnityMediationDependencies.xml 檔案,並移除 Unity Ads SDK 依附元件:

<!-- If using the Unity Ads Service from Unity3D, comment out this dependency to
avoid including the Unity Ads Android SDK twice. -->
<androidPackage spec="com.unity3d.ads:unity-ads:x.y.z">
  <repositories>
    <repository>https://repo.maven.apache.org/maven2/</repository>
  </repositories>
</androidPackage>

步驟 4:在 Unity Ads SDK 中導入隱私權設定

根據 Google 歐盟地區使用者同意授權政策,您必須向歐洲經濟區 (EEA) 的使用者揭露特定揭露事項,並向歐洲經濟區 (EEA) 的使用者取得有關裝置 ID 和個人資料使用行為的同意。本政策是配合《歐盟地區電子通訊隱私指令》和《一般資料保護規則》(GDPR) 而製定。取得同意聲明時,您必須指出中介服務鏈中每個可能收集、接收或使用個人資料的廣告聯播網,並提供各聯播網使用情形的相關資訊。Google 目前無法將使用者的同意聲明選項自動傳送至這類聯播網。

Unity Ads 適用的 Google 行動廣告中介服務外掛程式3.3.0 版包含 UnityAds.SetConsentMetaData() 方法。下列程式碼範例說明如何將同意聲明資訊傳送至 Unity Ads SDK。如果選擇呼叫這個方法,建議先完成這項操作,再透過 Google Mobile Ads SDK 請求廣告。

using GoogleMobileAds.Api.Mediation.UnityAds;
// ...

UnityAds.SetConsentMetaData("gdpr.consent", true);

詳情請參閱 Unity Ads 的「隱私權同意聲明和資料 API」和「遵循 GDPR」指南,以瞭解詳細資訊以及每種方法可提供的值。

美國州級隱私權法律

美國州級隱私權法律 規定,使用者必須有權選擇拒絕「販售」自己的「個人資訊」(相關條款定義了這些條款),並在「販售」方首頁上提供醒目的「請勿銷售我的個人資訊」連結。美國各州隱私權法律法規遵循指南可讓您為 Google 廣告放送啟用受限的資料處理模式,但 Google 無法將這項設定套用至中介服務鏈中的每個廣告聯播網。因此,您必須在中介服務鏈中逐一指明可能銷售個人資訊的廣告聯播網,並按照各聯播網的指示確保遵守規定。

Unity Ads 適用的 Google 行動廣告中介服務外掛程式3.3.0 版包含 UnityAds.SetConsentMetaData() 方法。下列程式碼範例說明如何將同意聲明資訊傳送至 Unity Ads SDK。如果選擇呼叫這個方法,建議先完成這項操作,再透過 Google Mobile Ads SDK 請求廣告。

using GoogleMobileAds.Api.Mediation.UnityAds;
// ...

UnityAds.SetConsentMetaData("privacy.consent", true);

詳情請參閱 Unity Ads 的「隱私權同意聲明和資料 API」和「遵循 CCPA」指南,以瞭解詳細資訊以及每種方法可提供的值。

步驟 5:新增必要程式碼

Android

Unity Ads Android 整合不需要其他程式碼。

iOS

SKAdNetwork 整合

按照 Unity Ads 說明文件,將 SKAdNetwork ID 加進專案的 Info.plist 檔案。

編譯錯誤

如果是 Unity Ads 轉接程式 3.4.0 以上版本,必須按照 Unity 說明文件中的整合步驟操作。

步驟 6:測試導入狀態

啟用測試廣告

請務必為Ad Manager 註冊測試裝置,並在 Unity Ads 使用者介面中啟用測試模式

驗證測試廣告

如要確認您正在接收來自Unity Ads的測試廣告,請使用 Unity Ads (Waterfall) 廣告來源在廣告檢查器中啟用單一廣告來源測試

錯誤代碼

如果轉接程式無法從 Unity Ads 接收廣告,發布商可以在下列類別下使用 ResponseInfo 查看廣告回應的基礎錯誤:

Android

com.google.ads.mediation.unity.UnityAdapter
com.google.ads.mediation.unity.UnityMediationAdapter

iOS

GADMAdapterUnity
GADMediationAdapterUnity

以下是廣告無法載入時,UnityAds 轉接程式擲回的程式碼和隨附的訊息:

Android

錯誤代碼 原因
0-10 UnityAds SDK 傳回錯誤。詳情請參閱程式碼
101 AdMob UI 中設定的 UnityAds 伺服器參數遺漏或無效。
102 UnityAds 傳回的刊登位置為 NO_FILL 狀態。
103 UnityAds 傳回的刊登位置處於「DISABLED」狀態。
104 UnityAds 嘗試顯示的廣告包含空值。
105 用來初始化、載入和/或顯示 Unity 廣告的內容不是 Activity 例項。
106 UnityAds 嘗試顯示還無法放送的廣告。
107 該裝置不支援 UnityAds。
108 UnityAds 一次只能載入 1 個廣告於每個刊登位置。
109 UnityAds 執行完畢並處於 ERROR 狀態。
200-204 UnityAds 橫幅廣告發生了特定錯誤詳情請參閱程式碼

iOS

0-9 UnityAds SDK 傳回錯誤。詳情請參閱 Unity 的說明文件
101 AdMob UI 中設定的 UnityAds 伺服器參數遺漏或無效。
102 UnityAds 不支援此裝置。
103 UnityAds 已完成顯示,並顯示 kUnityAdsFinishStateError 錯誤狀態。
104 呼叫其初始化器後,Unity 廣告物件為空值。
105 廣告尚未準備就緒,因此無法顯示 Unity 廣告。
106 UnityAds 呼叫了刊登位置變更回呼,並顯示刊登位置狀態 kUnityAdsPlacementStateNoFill。
107 UnityAds 呼叫了刊登位置變更回呼,並顯示刊登位置狀態 kUnityAdsPlacementStateDisabled。
108 已載入這個刊登位置的廣告。UnityAds SDK 不支援為同一個刊登位置載入多個廣告。

Unity Ads Unity 中介服務外掛程式變更記錄

版本 3.10.0

版本 3.9.1

版本 3.9.0

版本 3.8.0

版本 3.7.1

版本 3.7.0

版本 3.6.1

版本 3.6.0

3.5.0 版

版本 3.4.1

版本 3.4.0

3.3.0 版

版本 3.2.1

3.2.0 版

版本 3.1.0

版本 3.0.1

版本 3.0.0

2.7.2 版

2.7.1 版

2.7.0 版

2.6.0 版

2.5.1 版

2.5.0 版

2.4.7 版

2.4.6 版

2.4.5 版

2.4.4 版

2.4.3 版

2.4.2 版

2.4.1 版

2.4.0 版

2.3.0 版

2.2.0 版

2.1.0 版

  • 支援 Unity Ads Android 轉接程式 3.1.0.0 版。
  • 支援 Unity Ads iOS 轉接程式 3.1.0.0 版。

2.0.3 版

  • 更新外掛程式以支援新的開放式 Beta 版獎勵 API。
  • 新增對橫幅廣告的支援。
  • 支援 Unity Ads Android 轉接程式 3.0.0.2 版。
  • 支援 Unity Ads iOS 轉接程式 3.0.0.3 版。

2.0.2 版

  • 支援 Unity Ads Android 轉接程式 3.0.0.0 版。
  • 支援 Unity Ads iOS 轉接程式 3.0.0.1 版。

2.0.1 版

  • 修正建構 iOS 裝置時會導致的「不相容類型」錯誤。

2.0.0 版

  • 支援 Unity Ads Android 轉接程式 3.0.0.0 版。
  • 支援 Unity Ads iOS 轉接程式 3.0.0.0 版。

1.2.0 版

  • 支援 Unity Ads Android 轉接程式 2.3.0.0 版。
  • 支援 Unity Ads iOS 轉接程式 2.3.0.0 版。

1.1.3 版本

  • 支援 Unity Ads Android 轉接程式 2.2.1.0 版。
  • 支援 Unity Ads iOS 轉接程式 2.2.1.0 版。

1.1.2 版本

  • 支援 Unity Ads Android SDK 2.2.0 版。
  • 支援 Unity Ads iOS SDK 2.2.0 版。
  • 新增了 UnityAds.SetGdprConsentMetaData() 方法,可手動要求使用者選擇採用指定廣告。

1.1.1 版

  • 支援 Unity Ads Android SDK 2.2.0 版。
  • 支援 Unity Ads iOS SDK 2.2.1 版。

1.1.0 版本

  • 支援 Unity Ads Android SDK 2.2.0 版。
  • 支援 Unity Ads iOS SDK 2.2.0 版。

1.0.0 版本

  • 首次發布!
  • 支援 Unity Ads Android SDK 2.1.2 版。
  • 支援 Unity Ads iOS SDK 2.1.2 版。