將 AdColony 與中介服務整合

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

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

AdColony 的 AdMob 中介服務轉接程式具備下列功能:

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

需求條件

  • Unity 5.6 以上版本
  • 最新版 Google Mobile Ads SDK
  • [出價適用]:AdColony 1.0.5 以上版本適用的 Google 行動廣告中介服務外掛程式 (建議使用最新版本)
  • 如要在 Android 上部署應用程式,請執行下列動作:
    • Android API 級別 19 以上
  • 如何在 iOS 上部署
    • 12.0 以上版本的 iOS 部署目標
  • 使用 Google Mobile Ads SDK 設定的運作中 Unity 專案。詳情請參閱開始使用
  • 完成中介服務 入門指南

步驟 1:在 AdColony UI 中進行設定

註冊登入 AdColony 帳戶。按一下「Setup New App」按鈕,將您的應用程式新增至 AdColony 發布商資訊主頁

AdColony 設定新應用程式

填寫表單,然後按一下頁面底部的「Create」,將應用程式新增至 AdColony。

Android

AdColony 建立應用程式

iOS

AdColony 建立應用程式

建立應用程式後,您可以在應用程式的「基本應用程式資訊」部分下方依序前往「營利」>「應用程式」,取得應用程式 ID

Android

AdColony 應用程式 ID

iOS

AdColony 應用程式 ID

接著,在應用程式頁面的「廣告區」部分中,按一下「設定新的廣告區域」按鈕,建立新的廣告區域。即使您已有 AdMob ,我們還是建議您利用 AdMob 建立新的中介服務廣告區域。

Android

AdColony 設定區域

iOS

AdColony 設定區域

如需其他建立廣告刊登位置的操作說明,請選取您偏好的廣告格式對應的分頁。

  1. 將「Zone is Active?」(可用區為主動?) 設為「Yes」(是)
  2. 輸入廣告區域的「名稱」

  3. 選擇「橫幅」做為「廣告區域大小」

  4. 輸入「每日播放上限」的值。

插頁式

  1. 將「Zone is Active?」(可用區為主動?) 設為「Yes」(是)
  2. 輸入廣告區域的「名稱」

  3. 選擇 [片頭/插頁式] 做為「區域類型」

  4. 輸入「每日播放上限」的值。

已獲得獎勵

  1. 將「Zone is Active?」(可用區為主動?) 設為「Yes」(是)
  2. 輸入廣告區域的「名稱」

  3. 選擇「Value Exchange/V4VC」做為「Zone Type」

  4. 將「Client Side Only?」設為「Yes」,然後輸入「Virtual Currency Name」、「Daily Max Video per User」和「Reward Amount」

  5. 輸入「每日播放上限」的值。

完成後,點選「建立」按鈕,即可建立廣告區域。

建立廣告區域後,您可以在「Ad Zone」(廣告區域) 的「Integration」(整合) 部分找到「Zone ID」(區域 ID)。下一個步驟中會使用可用區 ID

AdColony 區域 ID

找出 AdColony API 金鑰

出價

整合出價時不需要執行這個步驟。

瀑布

您需要有 AdColony API 金鑰,才能設定AdMob 廣告單元 ID。前往 AdColony 發布商資訊主頁中的「帳戶設定」頁面,找出您的 API 金鑰。

AdColony 設定

開啟測試模式

如要在 AdColony 上啟用測試廣告,請前往 AdColony 資訊主頁,然後依序前往「營利」>「應用程式」。在應用程式的「廣告區域」部分底下,選取您想啟用測試廣告的區域。如要啟用測試廣告,請在「Development」部分下方勾選「Yes」至「Show test ads?」

AdColony 測試

步驟 2:在使用者介面中設定 AdMob AdColony 需求

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

Android

如需操作說明,請參閱 Android 指南的步驟 2。

iOS

相關操作說明請參閱 iOS 指南中的步驟 2。

將 AdColony 加入 GDPR 和美國州級法規廣告合作夥伴名單

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

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

變更記錄的下載連結,下載 AdColony 的最新版 Google 行動廣告中介服務外掛程式,然後從 ZIP 檔案擷取 GoogleMobileAdsAdColonyMediation.unitypackage

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

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

步驟 4:為 AdColony SDK 導入隱私權設定

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

AdColony 的 Google 行動廣告中介服務外掛程式 2.6.1 版已新增 AdColonyAppOptions 類別與 SetPrivacyFrameworkRequired()SetPrivacyConsentString() 方法,以便將同意聲明傳遞給 AdColony SDK。下列程式碼範例說明如何將同意聲明資訊傳遞至 AdColony 轉接程式,然後用於 AdColony 的初始化方法。您必須先設定這些選項,再初始化 Google Mobile Ads SDK,以確保能正確轉送至 AdColony 的 SDK。

using GoogleMobileAds.Api.Mediation.AdColony;
// ...

AdColonyAppOptions.SetPrivacyFrameworkRequired(AdColonyPrivacyFramework.GDPR, true);
AdColonyAppOptions.SetPrivacyConsentString(AdColonyPrivacyFramework.GDPR, "myPrivacyConsentString");

如要進一步瞭解相關資訊及方法中可能提供的值,請參閱 AdColony 的「消費者隱私權」說明文章隱私權法律導入指南

美國州級隱私權法律

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

AdColony 的 Google 行動廣告中介服務外掛程式 2.6.1 版已新增 AdColonyAppOptions 類別與 SetPrivacyFrameworkRequired()SetPrivacyConsentString() 方法,以便將同意聲明傳遞給 AdColony SDK。下列程式碼範例說明如何將同意聲明資訊傳遞至 AdColony 轉接程式,然後用於 AdColony 的初始化方法。您必須在初始化 Google Mobile Ads SDK 前設定這些選項,確保能正確轉往 AdColony 的 SDK。

using GoogleMobileAds.Api.Mediation.AdColony;
// ...

AdColonyAppOptions.SetPrivacyFrameworkRequired(AdColonyPrivacyFramework.CCPA, true);
AdColonyAppOptions.SetPrivacyConsentString(AdColonyPrivacyFramework.CCPA, "myPrivacyConsentString");

如要進一步瞭解相關資訊及方法中可能提供的值,請參閱 AdColony 的「消費者隱私權」說明文章隱私權法律導入指南

步驟 5:新增必要程式碼

Android

整合 AdColony 不需要任何其他程式碼。

iOS

SKAdNetwork 整合

按照 AdColony 的說明文件,將 SKAdNetwork ID 新增至專案的 Info.plist 檔案。

步驟 6:測試導入狀態

啟用測試廣告

請務必為AdMob 註冊測試裝置,並在 AdColony 使用者介面中啟用測試模式

驗證測試廣告

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

選擇性步驟

Android

權限

為獲得最佳效能,AdColony 建議在 Unity 專案 Assets/Plugins/Android/GoogleMobileAdsPlugin 目錄下的 AndroidManifest.xml 檔案中,加入下列選用權限

<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.VIBRATE" />

iOS

iOS 整合作業不需要其他步驟。

聯播網專屬參數

AdColony 中介服務套件支援額外的設定和要求參數,且可使用 AdColonyMediationExtrasAdColonyAppOptions 類別傳遞至轉接程式。

AdColonyMediationExtras 類別包含下列方法:

SetShowPrePopup(bool)
設定是否要在顯示廣告前顯示彈出式視窗。如果您不想在廣告顯示前顯示彈出式視窗,請設為 false。
SetShowPostPopup(bool)
設定是否要在顯示廣告後顯示彈出式視窗。如果不想在廣告顯示後顯示彈出式視窗,請設為 false。

AdColonyAppOptions 類別包含下列方法:

SetUserId(string)
設定 AdColony SDK 的使用者 ID,以便向 AdColony 廣告伺服器提供進一步的數據分析。
SetTestMode(bool)
設定是否要啟用 AdColony SDK 的測試模式。

以下程式碼範例說明如何設定這些設定和廣告請求參數:

// Set app-level configurations
AdColonyAppOptions.SetUserId("myUser");
AdColonyAppOptions.SetTestMode(true);

// Set ad request parameters
AdColonyMediationExtras extras = new AdColonyMediationExtras();
extras.SetShowPrePopup(true);
extras.SetShowPostPopup(true);

AdRequest request = new AdRequest.Builder()
        .AddMediationExtras(extras)
        .Build();

錯誤代碼

如果轉接程式未能接收來自 AdColony 的廣告,發布商可以在下列類別下使用 ResponseInfo,查看廣告回應的基礎錯誤:

Android

com.jirbo.adcolony.AdColonyAdapter
com.google.ads.mediation.adcolony.AdColonyMediationAdapter

iOS

GADMAdapterAdColony
GADMediationAdapterAdColony

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

Android

錯誤代碼 原因
100 AdColony SDK 傳回錯誤。
101 伺服器參數無效 (例如缺少區域 ID)。
102 已對相同的區域 ID 提出廣告請求。
103 AdColony SDK 傳回初始化錯誤。
104 要求的橫幅廣告大小未對應到有效的 AdColony 廣告大小。
105 廣告未載入,導致顯示錯誤。
106 用於初始化 AdColony SDK 的內容不是 Activity 執行個體。

iOS

錯誤代碼 原因
0 - 3 AdColony SDK 傳回錯誤。詳情請參閱說明文件
101 伺服器參數無效 (例如缺少區域 ID)。
102 顯示廣告的根檢視控制器為 nil
103 AdColony SDK 傳回初始化錯誤。
104 AdColony SDK 不支援在 5 秒內設定兩次。
105 無法顯示廣告。
106 獎勵區域並非 AdColony 入口網站的獎勵區域。

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

2.6.3 版 (進行中)

  • 已修正 MediationExtras 重複的定義警告。

2.6.2 版

2.6.1 版

  • 將隱私權 API 從 AdColonyAppOptions 類別更新為下列方法,以支援 GDPR 和 CCPA:
    • SetGDPRRequired(bool) -> SetPrivacyFrameworkRequired(AdColonyPrivacyFramework, bool)
    • IsGDPRRequired() -> GetPrivacyFrameworkRequired(AdColonyPrivacyFramework)
    • SetGDPRConsentString(string)-> SetPrivacyConsentString(AdColonyPrivacyFramework, string)
    • GetGDPRConsentString() -> GetPrivacyConsentString(AdColonyPrivacyFramework)
  • 支援 AdColony Android 轉接程式 4.8.0.1 版
  • 支援 AdColony iOS 轉接程式 4.9.0.2 版
  • 以 Google 行動廣告 Unity 外掛程式 7.4.1 版建立及測試。

2.6.0 版

2.5.0 版

2.4.1 版

2.4.0 版

2.3.0 版

2.2.0 版

2.1.0 版

2.0.3 版

2.0.2 版

2.0.1 版

2.0.0 版

1.0.6 版

1.0.5 版

  • 將下列方法從 AdColonyMediationExtras 建構工具類別移至 AdColonyAppOptions 類別:
    • SetGDPRRequired()
    • SetGDPRConsentString()
    • SetUserId()
    • SetTestMode()
  • 已將下列方法新增至 AdColonyAppOptions 類別:
    • IsGDPRRequired()
    • GetGDPRConsentString()
    • GetUserId()
    • IsTestMode()
  • 已從 AdColonyMediationExtras 建構工具類別中移除 SetZoneId() 方法。
  • 支援 AdColony Android 轉接程式 3.3.10.1 版。
  • 支援 AdColony iOS 轉接程式 3.3.7.2 版。

1.0.4 版本

  • 更新外掛程式以支援新的開放式 Beta 版獎勵 API。
  • 支援 AdColony Android 轉接程式 3.3.8.1 版。
  • 支援 AdColony iOS 轉接程式 3.3.6.1 版。

1.0.3 版本

  • 支援 AdColony Android 轉接程式 3.3.5.1 版。
  • 支援 AdColony iOS 轉接程式 3.3.5.0 版。

1.0.2 版

  • 支援 AdColony Android SDK 3.3.4 版。
  • 支援 AdColony iOS SDK 3.3.4 版。
  • 對於 Android,系統現在會忽略 AdColonyMediationExtras 建構工具類別的 SetTestMode()。發布商現在可以透過 AdRequest 建構工具類別中的 AddTestDevice(),指定測試裝置,向 Android 版 AdColony 請求測試廣告。
  • 已將下列方法新增至 AdColonyMediationExtras 建構工具類別:
    • SetGDPRRequired()
    • SetGDPRConsentString()

1.0.1 版

  • 支援 AdColony Android SDK 3.3.0-unity。
  • 支援 AdColony iOS SDK 3.3.0 版。

1.0.0 版本

  • 首次發布!
  • 支援 AdColony Android SDK 3.3.0 版。
  • 支援 AdColony iOS SDK 3.3.0 版。