本指南將說明如何使用 Google Mobile Ads SDK,透過中介服務載入並顯示 Unity 廣告,並涵蓋刊登序列整合。我們會說明如何將 Unity Ads 新增至廣告單元的中介服務設定,以及如何將 Unity Ads SDK 和轉接程式整合到應用程式中。 Flutter
支援的整合項目和廣告格式
Unity Ads 的 AdMob 中介服務轉接程式具備下列功能:
整合 | |
---|---|
出價 | |
瀑布 | |
格式 | |
橫幅廣告 | |
插頁式 | |
已獲得獎勵 |
需求條件
- 最新版 Google Mobile Ads SDK
- Flutter 3.7.0 以上版本
- 如要在 Android 上部署應用程式,請執行下列動作:
- Android API 級別 21 以上
- 如何在 iOS 上部署
- 12.0 以上版本的 iOS 部署目標
- 使用 Google Mobile Ads SDK 設定 Flutter 的有效專案。詳情請參閱開始使用。
- 完成中介服務 入門指南
步驟 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,才能設定AdMob 廣告單元 ID。
依序前往「營利」 >「設定」 >「API 管理」,並記下「Monetize Stats API Access Key」(營利統計資料 API 存取金鑰)。
接著,依序前往「營利」 >「機構設定」,並記下「機構核心 ID」。
開啟測試模式
您可以在 Unity Ads 資訊主頁啟用測試模式。在專案設定下方,選取「Testing」分頁標籤。
如要強制執行應用程式的測試模式,請按一下各個平台的編輯按鈕,勾選「覆寫用戶端測試模式」,然後選取「所有裝置的強制測試模式開啟 (例如使用測試廣告)」。
Android
iOS
或者,您也可以點選「Add Test Device」按鈕,為特定裝置啟用測試模式。
填寫表單然後按一下「Save」。
步驟 2:在 AdMob 使用者介面中設定 Unity Ads 需求
調整廣告單元中介服務設定
新增 Unity Ads 至 GDPR 和美國州級法規廣告合作夥伴名單
請按照 GDPR 設定 和 美國州級法規設定 ,在 AdMob UI 和美國州級法規廣告合作夥伴清單中新增 Unity Ads。
步驟 3:匯入 Unity Ads SDK 和轉接程式
透過 pub.dev 整合
在套件的 pubspec.yaml
檔案中,新增下列 SDK 和轉接程式的最新版本Unity Ads 依附元件:
dependencies:
gma_mediation_unity: ^1.0.0
手動整合
下載 Unity Ads 專用的最新版 Google 行動廣告中介服務外掛程式,擷取已下載的檔案,然後將擷取的外掛程式資料夾 (及其內容) 加進 Flutter 專案。接著,新增下列依附元件,以在 pubspec.yaml
檔案中參照外掛程式:
dependencies:
gma_mediation_unity:
path: path/to/local/package
步驟 4:在 Unity Ads SDK 中導入隱私權設定
歐盟同意聲明和 GDPR
根據 Google 歐盟地區使用者同意授權政策,您必須向歐洲經濟區 (EEA) 的使用者揭露特定揭露事項,並向歐洲經濟區 (EEA) 的使用者取得有關裝置 ID 和個人資料使用行為的同意。本政策是配合《歐盟地區電子通訊隱私指令》和《一般資料保護規則》(GDPR) 而製定。取得同意聲明時,您必須指出中介服務鏈中每個可能收集、接收或使用個人資料的廣告聯播網,並提供各聯播網使用情形的相關資訊。Google 目前無法將使用者的同意聲明選項自動傳送至這類聯播網。
Unity Ads 適用的 Google 行動廣告中介服務外掛程式包含
GmaMediationUnity.setGDPRConsent()
方法。下列程式碼範例說明如何將同意聲明資訊傳送至 Unity Ads SDK。如果選擇呼叫這個方法,建議先完成這項操作,再透過 Google Mobile Ads SDK 請求廣告。
import 'package:gma_mediation_unity/gma_mediation_unity.dart';
// ...
GmaMediationUnity.setGDPRConsent(true);
詳情請參閱 Unity Ads 的「隱私權同意聲明和資料 API」和「遵循 GDPR」指南,以瞭解詳細資訊以及每種方法可提供的值。
美國州級隱私權法律
美國州級隱私權法律 規定,使用者必須有權選擇拒絕「販售」自己的「個人資訊」(相關條款定義了這些條款),並在「販售」方首頁上提供醒目的「請勿銷售我的個人資訊」連結。美國各州隱私權法律法規遵循指南可讓您為 Google 廣告放送啟用受限的資料處理模式,但 Google 無法將這項設定套用至中介服務鏈中的每個廣告聯播網。因此,您必須在中介服務鏈中逐一指明可能銷售個人資訊的廣告聯播網,並按照各聯播網的指示確保遵守規定。
Unity Ads 適用的 Google 行動廣告中介服務外掛程式包含
GmaMediationUnity.setCCPAConsent()
方法。下列程式碼範例說明如何將同意聲明資訊傳送至 Unity Ads SDK。如果選擇呼叫這個方法,建議先完成這項操作,再透過 Google Mobile Ads SDK 請求廣告。
import 'package:gma_mediation_unity/gma_mediation_unity.dart';
// ...
GmaMediationUnity.setCCPAConsent(true);
步驟 5:新增必要程式碼
Android
Unity Ads Android 整合不需要其他程式碼。
iOS
SKAdNetwork 整合
按照 Unity Ads 說明文件,將 SKAdNetwork ID 加進專案的 Info.plist
檔案。
步驟 6:測試導入狀態
啟用測試廣告
請務必為AdMob 註冊測試裝置,並在 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 Flutter 中介服務轉接程式變更記錄
1.0.0 版本
- 第 1 版。
- 已驗證與 Unity Android 轉接程式 4.10.0.0 版的相容性
- 已驗證與 Unity iOS 轉接程式 4.10.0.0 版相容性