整合 Unity 廣告與中介服務

本指南說明如何使用 Google Mobile Ads SDK 載入並顯示 Unity Ads 廣告,方法是使用 中介服務和,涵蓋瀑布流整合。本篇文章將說明如何將 Unity Ads 新增至廣告單元的中介服務設定,以及如何將 Unity Ads SDK 和轉接程式整合至 iOS 應用程式。

支援的整合和廣告格式

Unity Ads 的中介服務適配器具有下列功能:

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

1出價整合仍為封閉測試版,請向您的客戶經理要求存取權。

需求條件

  • iOS 部署目標為 12.0 以上版本
  • 最新版 Google Mobile Ads SDK

  • 完成中介服務入門指南

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

註冊或登入 Unity Ads。

建立專案

Unity Ads 資訊主頁中,前往「Projects」,然後按一下「Create Project」

填寫表單,然後按一下「Create Project」新增專案。

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

在「Project Setup」互動視窗中,選取「I plan to use Mediation」,並在「Mediation Partner」中選取「Google AdMob」,然後按一下「Next」

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

填寫表單,然後點選「新增專案」

記下遊戲 ID

建立廣告單元

依序前往「營利」>「廣告單元」,然後點選「新增廣告單元」

輸入廣告單元名稱,然後選取平台廣告格式

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

新增刊登位置

出價

請與 Google 客戶經理聯絡,建立出價刊登位置。

瀑布

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

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

記下刊登位置 ID

找出 Unity Ads Reporting API 金鑰

出價

出價整合不必執行這個步驟。

瀑布

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

依序前往「營利」>「設定」>「API 管理」,並記下「營利統計資料 API 存取金鑰」

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

開啟測試模式

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

如要強制應用程式進入測試模式,請按一下「Apple App Store」旁邊的「編輯」按鈕,勾選「覆寫用戶端測試模式」,然後選取「為所有裝置強制啟用測試模式 (即使用測試廣告)」

或者,您也可以按一下「新增測試裝置」按鈕,為特定裝置啟用測試模式。

填寫表單,然後按一下「儲存」

步驟 2:在 Ad Manager UI 中設定 Unity Ads 需求

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

請按照GDPR 設定美國州級法規設定中的步驟,將 Unity Ads 新增至 AdMob 使用者介面中的 GDPR 和美國州級法規廣告合作夥伴名單。

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

  • 在專案的 Podfile 中加入以下行:

    pod 'GoogleMobileAdsMediationUnity'
    
  • 從指令列執行下列指令:

    pod install --repo-update

手動整合

  • 下載最新版的 Unity Ads SDK,並在專案中連結 UnityAds.framework

  • Changelog 中的下載連結下載最新版 Unity Ads 轉接器,並在專案中連結 UnityAdapter.framework

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

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

在 SDK 2.0.0 版中,Unity Ads 新增了一個 API,以支援隱私權設定。以下程式碼範例會說明如何將這項同意聲明資訊傳遞至 Unity Ads SDK。如果您選擇手動將同意資訊傳遞至 Unity Ads SDK,建議您在透過 Google Mobile Ads SDK 要求廣告之前,先呼叫這段程式碼。

Swift

import UnityAds
// ...

let gdprMetaData = UADSMetaData()
gdprMetaData.set("gdpr.consent", value: true)
gdprMetaData.commit()

Objective-C

#import <UnityAds/UnityAds.h>
// ...

UADSMetaData *gdprMetaData = [[UADSMetaData alloc] init];
[gdprMetaData set:@"gdpr.consent" value:@YES];
[gdprMetaData commit];

如要進一步瞭解詳情和各個方法可提供的值,請參閱 Unity Ads 的 隱私權同意聲明和資料 API遵循 GDPR指南。

美國州級隱私權法律

美國州級隱私權法律 規定使用者有權選擇拒絕「販售」其「個人資訊」(如該法案對「販售」與「個人資訊」這兩個詞的定義),且「銷售」方可以在首頁提供顯眼的「請勿銷售我的個人資訊」連結。美國州級隱私權法律法規遵循指南可讓您在 Google 廣告放送中啟用受限的資料處理功能,但 Google 無法將這項設定套用至中介服務鏈中的每個廣告聯播網。因此,您必須在中介服務鏈中找出可能參與個人資訊銷售的廣告聯播網,並按照各廣告聯播網的指示確保遵守規定。

在 SDK 2.0.0 版中,Unity Ads 新增了一個 API,以支援隱私權設定。以下程式碼範例會說明如何將這項同意聲明資訊傳遞至 Unity Ads SDK。如果您選擇手動將同意資訊傳遞至 Unity Ads SDK,建議您在透過 Google Mobile Ads SDK 要求廣告之前,先呼叫這段程式碼。

Swift

import UnityAds
// ...

let ccpaMetaData = UADSMetaData()
ccpaMetaData.set("privacy.consent", value: true)
ccpaMetaData.commit()

Objective-C

#import <UnityAds/UnityAds.h>
// ...

UADSMetaData *ccpaMetaData = [[UADSMetaData alloc] init];
[ccpaMetaData set:@"privacy.consent" value:@YES];
[ccpaMetaData commit];

如需詳細資訊和可在各個方法中提供的值,請參閱 Unity Ads 的隱私權同意聲明和資料 API,以及指南。

步驟 5:新增必要程式碼

SKAdNetwork 整合

請按照 Unity Ads 說明文件,將 SKAdNetwork 識別碼新增至專案的 Info.plist 檔案。

編譯錯誤

Swift

Swift 整合作業不需要額外程式碼。

目標-C

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

步驟 6:測試導入作業

啟用測試廣告

請務必為 AdMob 註冊測試裝置,並在 Unity Ads UI 中啟用測試模式

驗證測試廣告

如要確認您收到 Unity Ads 的測試廣告,請使用 Unity Ads (出價) 和 Unity Ads (刊登序列) 廣告來源,在廣告檢查器中啟用單一廣告來源測試

錯誤代碼

如果轉接器無法從 Unity Ads 接收廣告,發布商可以使用 GADResponseInfo.adNetworkInfoArray 在下列類別下:

GADMAdapterUnity
GADMediationAdapterUnity

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

錯誤代碼 原因
0-9 UnityAds SDK 傳回錯誤。詳情請參閱 Unity 的說明文件
101 在使用者介面中設定的 UnityAds 伺服器參數 Ad Manager 遺失或無效。
102 裝置不支援 UnityAds。
103 UnityAds 已完成顯示,並顯示錯誤狀態「kUnityAdsFinishStateError」。
104 Unity 廣告物件在呼叫其初始化器後為 nil。
105 廣告尚未就緒,因此無法顯示 Unity Ads。
106 UnityAds 呼叫了含有刊登位置狀態 kUnityAdsPlacementStateNoFill 的刊登位置變更回呼。
107 UnityAds 呼叫了含有刊登位置狀態 kUnityAdsPlacementStateDisabled 的刊登位置變更回呼。
108 這個刊登位置已載入廣告。UnityAds SDK 不支援為同一個刊登位置載入多個廣告。

Unity 廣告 iOS 中介服務轉接程式變更記錄

4.12.3.1 版

  • 更新 CFBundleShortVersionString,使其包含三個元件,而非四個。

建構及測試工具:

  • Google Mobile Ads SDK 11.10.0 版。
  • Unity Ads SDK 4.12.3 版。

4.12.3.0 版

  • 已驗證與 Unity Ads SDK 4.12.3 的相容性。

建構及測試環境:

  • Google Mobile Ads SDK 11.10.0 版。
  • Unity Ads SDK 4.12.3 版。

4.12.2.0 版

  • 已確認與 Unity Ads SDK 4.12.2 相容。

建構及測試工具:

  • Google Mobile Ads SDK 11.7.0 版。
  • Unity Ads SDK 4.12.2 版。

4.12.1.0 版

  • 已確認與 Unity Ads SDK 4.12.1 相容。

建構及測試工具:

  • Google Mobile Ads SDK 11.6.0 版。
  • Unity Ads SDK 4.12.1 版,

4.12.0.0 版

  • 已確認與 Unity Ads SDK 4.12.0 相容。

建構及測試環境:

  • Google Mobile Ads SDK 11.5.0 版。
  • Unity Ads SDK 4.12.0 版。

4.11.3.1 版

  • 新增對橫幅、插頁式和獎勵廣告格式的出價支援。

建構及測試環境:

  • Google Mobile Ads SDK 11.5.0 版。
  • Unity Ads SDK 4.11.3 版。

4.11.3.0 版

  • 已確認與 Unity Ads SDK 4.11.3 相容。

建構及測試環境:

  • Google Mobile Ads SDK 11.4.0 版。
  • Unity Ads SDK 4.11.3 版。

4.11.2.0 版

  • 已確認與 Unity Ads SDK 4.11.2 相容。

建構及測試環境:

  • Google Mobile Ads SDK 11.4.0 版。
  • Unity Ads SDK 4.11.2 版。

4.10.0.0 版

  • 已確認與 Unity Ads SDK 4.10.0 相容。

建構及測試環境:

  • Google Mobile Ads SDK 11.2.0 版。
  • Unity Ads SDK 4.10.0 版。

4.9.3.0 版

  • 已驗證與 Unity Ads SDK 4.9.3 的相容性。
  • 現在最低版本需求為 iOS 12.0。
  • 現在需要 Google Mobile Ads SDK 11.0 以上版本。
  • UnityAdapter.xcframework 的架構中加入 Info.plist

建構及測試環境:

  • Google Mobile Ads SDK 11.0.1 版。
  • Unity Ads SDK 4.9.3 版。

4.9.2.0 版

  • 已驗證與 Unity Ads SDK 4.9.2 的相容性。

建構及測試環境:

  • Google Mobile Ads SDK 10.13.0 版。
  • Unity Ads SDK 4.9.2 版。

4.9.1.0 版

  • 已驗證與 Unity Ads SDK 4.9.1 的相容性。

建構及測試環境:

  • Google Mobile Ads SDK 10.12.0 版。
  • Unity Ads SDK 4.9.1 版。

4.9.0.0 版

  • 已從 Unity 轉接程式移除 GADMAdNetworkAdapter 相容性和依附元件。
  • unityAdsShowStart 委派方法中新增回報曝光方法叫用。
  • 已確認與 Unity Ads SDK 4.9.0 相容。

建構及測試環境:

  • Google Mobile Ads SDK 10.12.0 版。
  • Unity Ads SDK 4.9.0 版。

4.8.0.0 版

  • 新增對橫幅廣告曝光事件的支援。
  • 已確認與 Unity Ads SDK 4.8.0 相容。

建構及測試環境:

  • Google Mobile Ads SDK 10.7.0 版。
  • Unity Ads SDK 4.8.0 版。

4.7.1.0 版

  • 已驗證與 Unity Ads SDK 4.7.1 的相容性。

建構及測試環境:

  • Google Mobile Ads SDK 10.5.0 版。
  • Unity Ads SDK 4.7.1 版,

4.7.0.0 版

  • 已確認與 Unity Ads SDK 4.7.0 相容。
  • 現在須使用最低 iOS 11.0 版。
  • 現在需要 Google Mobile Ads SDK 10.4.0 以上版本。

建構及測試環境:

  • Google Mobile Ads SDK 10.4.0 版。
  • Unity Ads SDK 4.7.0 版。

4.6.1.0 版

  • 已驗證與 Unity Ads SDK 4.6.1 的相容性。

建構及測試環境:

  • Google Mobile Ads SDK 10.2.0 版。
  • Unity Ads SDK 4.6.1 版。

4.6.0.0 版

  • 已驗證與 Unity Ads SDK 4.6.0 的相容性。
  • 新增將 COPPA 資訊轉送至 Unity Ads SDK 的支援功能。
  • 已停止支援 armv7 架構。
  • 現在需要 Google Mobile Ads SDK 10.0.0 以上版本。

建構及測試環境:

  • Google Mobile Ads SDK 10.2.0 版。
  • Unity Ads SDK 4.6.0 版。

4.5.0.0 版

  • 已驗證與 Unity Ads SDK 4.5.0 的相容性。

建構及測試環境:

  • Google Mobile Ads SDK 9.14.0 版。
  • Unity Ads SDK 4.5.0 版。

4.4.1.0 版

  • 已確認與 Unity Ads SDK 4.4.1 相容。

建構及測試環境:

  • Google Mobile Ads SDK 9.11.0 版。
  • Unity Ads SDK 4.4.1 版。

4.4.0.0 版

  • 更新轉接程式,以便使用 didRewardUser API。
  • 現在需要 Google Mobile Ads SDK 9.8.0 以上版本。
  • 已確認與 Unity Ads SDK 4.4.0 相容。

建構及測試環境:

  • Google Mobile Ads SDK 9.10.0 版。
  • Unity Ads SDK 4.4.0 版。

4.3.0.0 版

  • 已確認與 Unity Ads SDK 4.3.0 相容。

建構及測試環境:

  • Google Mobile Ads SDK 9.8.0 版。
  • Unity Ads SDK 4.3.0 版。

4.2.1.0 版

  • 已確認與 Unity Ads SDK 4.2.1 相容。

建構及測試環境:

  • Google Mobile Ads SDK 9.4.0 版。
  • Unity Ads SDK 4.2.1 版。

4.1.0.0 版

  • 已確認與 Unity Ads SDK 4.1.0 相容。

建構及測試環境:

  • Google Mobile Ads SDK 9.2.0 版。
  • Unity Ads SDK 4.1.0 版。

4.0.1.0 版

  • 已確認與 Unity Ads SDK 4.0.1 相容。

建構及測試環境:

  • Google Mobile Ads SDK 9.0.0 版。
  • Unity Ads SDK 4.0.1 版。

4.0.0.2 版

  • 新增對 arm64 模擬器架構的支援。

建構及測試環境:

  • Google Mobile Ads SDK 9.0.0 版。
  • Unity Ads SDK 4.0.0 版。

4.0.0.1 版

  • 已確認與 Google Mobile Ads SDK 9.0.0 相容。
  • 現在需要 Google Mobile Ads SDK 9.0.0 以上版本。

建構及測試工具:

  • Google Mobile Ads SDK 9.0.0 版。
  • Unity Ads SDK 4.0.0 版。

4.0.0.0 版

  • 已確認與 Unity Ads SDK 4.0.0 相容。
  • 最低版本需求為 iOS 10.0。

建構及測試

  • Google Mobile Ads SDK 8.13.0 版。
  • Unity Ads SDK 4.0.0 版。

3.7.5.0 版

  • 已驗證與 Unity Ads SDK 3.7.5 的相容性。

採用以下工具建構及測試

  • Google Mobile Ads SDK 8.8.0 版。
  • Unity Ads SDK 3.7.5 版。

3.7.4.0 版

  • 已確認與 Unity Ads SDK 3.7.4 相容。

建構及測試

  • Google Mobile Ads SDK 8.7.0 版。
  • Unity Ads SDK 3.7.4 版。

3.7.2.0 版

  • 已確認與 Unity Ads SDK 3.7.2 相容。
  • 放寬 Google Mobile Ads SDK 8.0.0 以上版本的依附元件。

採用以下工具建構及測試

  • Google Mobile Ads SDK 8.5.0 版。
  • Unity Ads SDK 3.7.2 版。

3.7.1.0 版

  • 已確認與 Unity Ads SDK 3.7.1 相容。
  • 現在需要 Google Mobile Ads SDK 8.4.0 以上版本。

採用以下工具建構及測試

  • Google Mobile Ads SDK 8.4.0 版。
  • Unity Ads SDK 3.7.1 版。

3.6.2.0 版

  • 更新轉接程式,以便使用 .xcframework 格式。
  • 已確認與 Unity Ads SDK 3.6.2 相容。
  • 現在需要 Google Mobile Ads SDK 8.2.0 以上版本。

採用以下工具建構及測試

  • Google Mobile Ads SDK 8.2.0 版。
  • Unity Ads SDK 3.6.2 版。

3.6.0.0 版

  • 已確認與 Unity Ads SDK 3.6.0 相容。
  • 現在需要 Google Mobile Ads SDK 7.69.0 以上版本。

採用以下工具建構及測試

  • Google Mobile Ads SDK 7.69.0 版。
  • Unity Ads SDK 3.6.0 版。

3.5.1.1 版

  • 修正 Unity Ads SDK 完成初始化時,有時會發生當機的情形。

採用以下工具建構及測試

  • Google Mobile Ads SDK 7.68.0 版。
  • Unity Ads SDK 3.5.1 版。

3.5.1.0 版

  • 已確認與 Unity Ads SDK 3.5.1 相容。

建構及測試

  • Google Mobile Ads SDK 7.68.0 版。
  • Unity Ads SDK 3.5.1 版。

3.5.0.0 版

  • 已確認與 Unity Ads SDK 3.5.0 相容。
  • 新增自動調整橫幅廣告支援功能。
  • 現在需要 Google Mobile Ads SDK 7.68.0 以上版本。

採用以下工具建構及測試

  • Google Mobile Ads SDK 7.68.0 版。
  • Unity Ads SDK 3.5.0 版。

3.4.8.0 版

  • 已驗證與 Unity Ads SDK 3.4.8 的相容性。
  • 現在需要使用 Google Mobile Ads SDK 7.63.0 以上版本。

採用以下工具建構及測試

  • Google Mobile Ads SDK 7.63.0 版。
  • Unity Ads SDK 3.4.8 版。

3.4.6.0 版

  • 已確認與 Unity Ads SDK 3.4.6 相容。
  • 現在需要 Google Mobile Ads SDK 7.60.0 以上版本。

採用以下工具建構及測試

  • Google Mobile Ads SDK 7.60.0 版。
  • Unity Ads SDK 3.4.6 版。

3.4.2.2 版

  • 新增標準化轉接器錯誤代碼和訊息。
  • 將最低要求的 Google Mobile Ads SDK 版本更新至 7.59.0。

採用以下工具建構及測試

  • Google Mobile Ads SDK 7.59.0 版。
  • Unity Ads SDK 3.4.2 版,

版本 3.4.2.1

  • 改善 Unity 錯誤轉送功能,以便提早偵測初始化和廣告載入失敗情形,並減少逾時情形。
  • 已停止支援 i386 架構。

採用以下工具建構及測試

  • Google Mobile Ads SDK 7.57.0 版。
  • Unity Ads SDK 3.4.2 版。

版本 3.4.2.0

  • 已驗證與 Unity Ads SDK 3.4.2 的相容性。

採用以下工具建構及測試

  • Google Mobile Ads SDK 7.55.1 版。
  • Unity Ads SDK 3.4.2 版,

3.4.0.0 版

  • 已確認與 Unity Ads SDK 3.4.0 相容。
  • 現已支援一次載入多個橫幅廣告。

採用以下工具建構及測試

  • Google Mobile Ads SDK 7.53.0 版。
  • Unity Ads SDK 3.4.0 版。

3.3.0.0 版

  • 已確認與 Unity Ads SDK 3.3.0 相容。
  • 現已支援一次載入多個橫幅廣告。

採用以下工具建構及測試

  • Google Mobile Ads SDK 7.51.0 版。
  • Unity Ads SDK 3.3.0 版。

3.2.0.1 版

  • 已確認與 Unity Ads SDK 3.2.0 相容。
  • 現在需要 Google Mobile Ads SDK 7.46.0 以上版本。
  • 修正 Unity 橫幅廣告在載入時無法顯示的問題。
  • 修正轉接程式無法正確轉送 unityAdsReady 回呼的問題。

3.2.0.0 版

  • 由於未填入報表時發生迴歸問題,因此版本已遭移除。

3.1.0.0 版

  • 已確認與 Unity Ads SDK 3.1.0 相容。

3.0.3.0 版

  • 已確認與 Unity Ads SDK 3.0.3 相容。
  • 現在需要 Google Mobile Ads SDK 7.42.2 以上版本。
  • 新增支援彈性橫幅廣告尺寸。
  • 修正 Unity 橫幅廣告在每個工作階段中只會成功載入一次的問題。

3.0.1.0 版

  • 已確認與 Unity Ads SDK 3.0.1 相容。
  • 修正獎勵廣告解算時發生的異常終止問題。

3.0.0.3 版

  • 更新轉接程式以使用新的獎勵 API。
  • 現在需要 Google Mobile Ads SDK 7.41.0 以上版本。

3.0.0.2 版

  • 開始支援橫幅廣告。

版本 3.0.0.1

  • 修正了適配器儲存先前要求的「placementId」的問題。

3.0.0.0 版

  • 已確認與 Unity Ads SDK 3.0.0 相容。

2.3.0.0 版

  • 已確認與 Unity Ads SDK 2.3.0 相容。

2.2.1.1 版

  • 在轉換器中新增 adapterDidCompletePlayingRewardBasedVideoAd: 回呼。

2.2.1.0 版

  • 已驗證與 Unity Ads SDK 2.2.1 的相容性。

2.2.0.0 版

  • 已確認與 Unity Ads SDK 2.2.0 相容。

2.1.2.0 版

  • 已驗證與 Unity Ads SDK 2.1.2 的相容性。
  • 已移除對「armv7s」架構的支援。

2.1.1.0 版

  • 已確認與 Unity Ads SDK 2.1.1 相容。

2.1.0.0 版

  • 更新轉接器,使其與 Unity Ads SDK 2.1.0 相容。

2.0.8.0 版

  • 已確認與 Unity Ads SDK 2.0.8 相容。

2.0.7.0 版

  • 轉接程式現在會追蹤 Unity Ads 點擊次數,以便 AdMob 和 Unity Ads 點擊統計資料相符。
  • 應用程式現在會收到 interstitialWillLeaveApplication:rewardBasedVideoAdWillLeaveApplication: 回呼。

2.0.6.0 版

  • 已驗證與 Unity Ads SDK 2.0.6 的相容性。

2.0.5.0 版

  • 已確認與 Unity Ads SDK 2.0.5 相容。

2.0.4.0 版

  • 將版本命名系統變更為 [Unity Ads SDK version].[adapterpatch version]。
  • 將最低要求的 Unity Ads SDK 更新至 2.0.4 版。
  • 將 Google Mobile Ads SDK 最低要求更新至 7.10.1 版。

1.0.2 版

  • 讓使用者獎勵項目的鍵非空值。獎勵鍵一律為空白或有效字串。

1.0.1 版

  • 修正無法呼叫 rewardBasedVideoAdDidOpen: 回呼的錯誤。

1.0.0 版本

  • 支援插頁式廣告和獎勵影片廣告。