Google AdMob 集成
通过创建 AdMob 帐户、添加 app 和设置广告区域,将 AdMob 集成为 Unity LevelPlay 上的广告网络。
阅读时间7 分钟最后更新于 2 天前
本指南将逐步说明如何在 Unity LevelPlay Mediation 中将 AdMob 和 AdMob Native 设置为实时广告网络。
先决条件
Google Ad Manager 广告服务使用 AdMob SDK。
从 AdMob SDK 7.69.0+ 开始,AdMob 使用 XCFramework。如果要使用 CocoaPods 进行 AdMob 集成,请确保您有 CocoaPods 版本 1.9.0+。
AdMob 支持 Android 操作系统版本 4.1(API 级别 16)及更高版本。所需的 Gradle 构建具为 3.5.4。\
AdMob SDK 支持 iOS 版本 10+,将为 iOS 版本 11+ 上的用户服务器广告服务。
步骤 1.创建 AdMob 帐户
- 要通过 Unity LevelPlay Mediation 访问 AdMob 的横幅广告和原生广告库存,您需要创建 AdMob 帐户。
- 建议将 AdMob 帐户的时间调整为 UTC,以便与 Ironsource 平台保持一致。这将确保准确的报告。了解更多信息。
步骤 2.在 Admob 中创建应用程序和广告区域
接下来,您必须添加 app 并在 AdMob 帐户中设置 Ad Zones。
AdMob 不允许在同一设置中设置超过 3 个相同广告类型的广告区域。
例如,聚合组的奖励广告服务不得超过三个。
例如,聚合组的奖励广告服务不得超过三个。
添加 app
-
登录 AdMob 帐户。在控制面板上,选择 Apps。
-
此时将显示一个模态,您可以在其中搜索 app、手动添加 app 或直接选择现有 app 进行变现。
-
选择插页式、奖励式、横幅广告或原生高级(横幅广告的原生广告服务)作为广告单元格式,并输入相关详细信息。
插页式视频
- Ad Type(广告类型):您可以保留这两个复选框,因为我们支持文本、图像、视频和富媒体插页。
- Ad unit name(广告单元名称):建议的最佳做法是直观地命名广告单元,以便通过 Unity LevelPlay Mediation 很容易识别为要投放 AdMob Interstitials 的广告单元。
奖励广告
- Ad unit name(广告单元名称):建议的最佳做法是直观地命名广告单元,以便通过 Unity LevelPlay Mediation 轻松识别为 AdMob 奖励广告服务的广告单元。
横幅广告
- Ad Unit Name(广告单元名称): 建议的最佳做法是直观地命名广告单元,以便很容易识别为您即将投放的广告单元 AdMob Banners Unity LevelPlay Mediation
- eCPM 地面 - 根据国家和瀑布流策略启用并输入 eCPM 值
原生横幅
横幅的原生广告服务使您能够从 Google AdMob 访问原生广告需求。这意味着您可以通过访问 Google 的原生需求和横幅需求来提高横幅效果。
- Ad unit name(广告单元名称):键入要轻松识别的名称
- 高级设置:同时选择图像和视频
- eCPM 地面:根据您的国家和瀑布流策略启用并输入 eCPM 值
现在检索 app ID 和 Ad Unit ID 并保存以供以后使用。然后,选择 Done。
步骤 3.在 LevelPlay 网络设置模块中激活 AdMob
在 LevelPlay SDK Networks Setup(LevelPlay SDK 网络设置)页面上设置 AdMob 时,请登录 Google 帐户,然后将自动获取运行 AdMob 插页、奖励、横幅广告和原生广告服务的必要参数。
为了使 AdMob 能够与 LevelPlay SDK 正常工作,需要将 AdMob 帐户中的一些数据插入到 ironSource Network Setup Module 中:
数据 | 描述 |
|---|---|
| App ID(应用 ID) | Admob 后台上分配给 app 的唯一 ID。 |
| 广告单元 ID | Admob 后台上分配给 app 广告单元的唯一 ID。 |
| Client ID(客户端 ID) | 指定帐户与广告单元之间关系的唯一标识符。 |
| 客户端密钥 | 与客户端 ID 配对的密钥 |
| 刷新令牌 | 客户端应用程序已收到的刷新令牌。 |
获取此信息后,必须在 LevelPlay 帐户中配置 AdMob 的参数。正确添加上述信息后,您将能够充分利用 AdMob 的广告库存和关于 Unity LevelPlay Mediation 的报告数据。
- App ID(应用 ID) 要获取 app ID,请转到 Admob 平台上左侧栏中的 Apps 选项卡,然后选择 App Settings。然后,您将看到应用程序的设置以及 app ID。

- 广告单元 ID 要获取广告单位 ID,请转到 Admob 平台上左侧栏的 Apps 选项卡,然后选择 Ad Units。然后,您将看到应用程序的广告单位以及 Ad Unit ID。

-
客户端 ID 和客户端密钥
-
要获取客户端 ID 和客户端密钥,请访问 Google API Manager。
-
选择页面左上角的 API 项目下拉选单,选择 Create a project(创建项目)或选择已为此 app 创建的项目。如果要为此创建新项目,请在出现的对话框中提供项目名称、计费帐户和 Location,然后选择 Create。
-
在左侧栏中,选择 Credentials,然后选择 OAuth consent screen 选项卡。 在此页面上,提供商品名称。选择 Save(保存)。
-
在左侧栏中,选择 Dashboard** 和**,然后选择 启用 API 和服务。
-
接下来,启用 AdMob API。
-
选择左侧栏中的 Credentials 选项卡。选择 Create credentials 下拉列表并选择 OAuth Client ID。
-
选择 Web application,并为 app 提供名称。在以下字段中,必须输入至少一个授权重定向 URI 的https://developers.google.com/oauthplayground。例如:
- 授权的 JavaScript 来源:
https://YOUR_NAMESPACE **(Optional)** - 授权重定向 URI:https://developers.google.com/oauthplayground
- 授权的 JavaScript 来源:
-
选择 Create,此时将显示客户端 ID 和客户端密钥。
-
-
刷新令牌
- 要获取刷新令牌,请访问 OAuth 2.0 Playground。
- 选择右上角的设置图标。取消选中标记为强制批准提示词的复选框,并选中 Use your own OAuth credentials(使用您自己的 OAuth 凭据)。输入客户端 ID 和客户端密钥。

- 接下来,在步骤 1 中:选择 & Authorize APIS,输入 https://www.googleapis.com/auth/admob.report 并选择 Authorize APIs。

- 授权项目访问 AdMob 数据。
- 然后,您应该会收到步骤 1 中的授权代码,并可以选择令牌交换授权代码按钮。然后,您将获得一个 Refresh 令牌和一个 Access Token。

在 LevelPlay 帐户中配置 AdMob 参数
- 拥有所有这些参数后,登录 IronSource 帐户,然后转到 Monetize > SETUP > SDK Networks。

- 从 Manage Networks 列表中选择 Admob,然后输入 Admob 客户端 ID、Client Secret 和 Refresh Token,或选择 Login with Google 选项。


- 选择 Save(保存)。然后,将在 Available Ad Networks 表中启用 AdMob 和 AdMob Native。

- 接下来,选择要使用 AdMob 运行 Unity LevelPlay 聚合的app程序。
- 从 Ad Networks 的 Setup 列表中选择 Admob,然后选择 Tool Define 图标。然后在 Interstitial、Rewarded ads Video 或 Banner Settings 下插入 App ID 和 Ad Unit ID。

- 验证与 Reporting API 的集成;此列将通过 Reporting API 检查您的集成,并返回三种可能的响应:Verified、Failed 和 No Response。仔细检查您的集成和上面输入的信息;然后选择 Retry(重试),直到看到 Verified(已验证)。
步骤 4.将 Admob Adapter 添加到构建中
Unity Integration Manager(推荐)
完成 SDK 集成后,可使用 Unity Integration Manager 下载 AdMob 适配器。
在 Unity 开发平台中,转到 LevelPlay > Integration Manager。
如果您已经拥有最新版本的适配器,则操作按钮将更改为 " Updated " 并已禁用。
Android(手动解析)
要应用更改,请确保使用“Resolve”过程。这将根据您的选择下载所有相关工件。有关详细信息,请参阅此处的说明。
添加 AdMob app ID
Android
将您的 AdMob app ID 作为 标签的子项添加到 app 的 AndroidManifest:
<application></application><meta-data android:name="com.google.android.gms.ads.APPLICATION_ID" android:value="[ADMOB_APP_ID]"/>
将 替换为您在步骤 3 中获取的 app ID 值。
否则会导致 AdMob 的 SDK 引发的崩溃。如需了解更多信息,请参阅 AdMob 指南。
[ADMOB\_APP\_ID\]iOS
将 AdMob app ID 添加到 app 的 plist(如此处所述)。
或者,可以通过编程方式做出此更改
<key>GADApplicationIdentifier</key><string>[APP_ID]</string>
将“GADApplicationIdentifier”值替换为您在步骤 3 中检索的 app ID 值。
Android 插件手册集成
- 下载适用于 Android 的广告适配器:
从此处下载 AdMob 适配器和 AdMob SDK (AAR)。 - 将 Admob 文件添加到 Unity 项目中:
将文件导入 Assets/Plugins/Android/。 - 将您的 AdMob app ID 作为 标签的子项添加到 app 的 AndroidManifest:
<application></application>
<meta-data android:name="com.google.android.gms.ads.APPLICATION_ID" android:value="[ADMOB_APP_ID]"/>
- 将 替换为您在步骤 3 中获取的 app ID 值。 否则会导致 AdMob 的 SDK 引发的崩溃。如需了解更多信息,请参阅 AdMob 指南。
[ADMOB\_APP\_ID\]
iOS 插件手动集成
- 下载 AdMob iOS 适配器: 请参阅 iOS 调解网络。
- 将 AdMob 适配器添加到 Unity 项目: 将 AdMob 适配器文件导入 Assets/Plugins/iOS。
- 将 SDK 添加 Xcode 项目中: 由于 Unity3D 不支持 XCFrameworks,因此请将 SDK XCFrameworks 直接添加到 Xcode 项目中。
- 将 AdMob app ID 添加到 app 的 plist(如此处所述)。 或者,可以通过编程方式做出此更改
<key>GADApplicationIdentifier</key><string>[APP_ID]</string>
- 将“GADApplicationIdentifier”值替换为您在步骤 3 中检索的 app ID 值。
步骤 5。Update Info.plist(适用于 iOS)
从适用于 iOS 的 AdMob SDK V7.42.0 **(适配器版本 4.3.3 + iOS/Unity)**开始,AdMob 的 SDK 要求发布者将其 AdMob app ID 添加到 app 的 plist 中,如此处所述。
或者,可以通过编程方式做出此更改
<key>GADApplicationIdentifier</key><string>[APP_ID]</string>
将“GADApplicationIdentifier”值替换为您在步骤 3 中检索的 app ID 值。
否则会导致 AdMob 的 SDK 引发的崩溃。如需了解更多信息,请参阅 AdMob 指南。
步骤 6。其他步骤
面向子项的设置 – COPPA
Unity LevelPlay 聚合允许发布者将 AdMob 面向儿童的设置直接传达给 AdMob 网络。
此功能是使用 LevelPlay SDK 6.14.0+、AdMob Unity 适配器 4.3.12+ 已启用的。
使用以下语法使用参数“True”设置 AdMob setTagForChildDirectedTreatment:
LevelPlay.SetMetaData("AdMob_TFCD","true");
使用以下语法使用参数“False”设置 AdMob setTagForChildDirectedTreatment:
LevelPlay.SetMetaData("AdMob_TFCD","false");
要了解有关 AdMob 网络下面向儿童的设置的更多信息,请访问
给。
未满同意年龄的用户 – GDPR
Unity LevelPlay 聚合允许发布者与 AdMob 网络进行通信,AdMob 网络是 Tag For Users under the Age of Consent in Europe (TFUA) 请求。
此功能是使用 LevelPlay SDK 6.14.0+、AdMob Unity 适配器 4.3.12+ 已启用的。
使用以下语法将 setTagForUnderAgeOfConsent 设置为“True”:
LevelPlay.SetMetaData("AdMob_TFUA","true");
使用以下语法将 setTagForUnderAgeOfConsent 设置为“False”:
LevelPlay.SetMetaData("AdMob_TFUA","false");
要了解有关 AdMob 网络下面向儿童的设置的更多信息,请访问此处。
广告内容过滤
Unity LevelPlay 聚合允许发布者与 AdMob 网络通信,为所有广告请求提供最高广告内容评级。
此功能是使用 LevelPlay SDK 7.12.0+、AdMob Android 适配器 4.3.23+ 已启用的。
使用以下语法设置 maxAdContentRating:
LevelPlay.SetMetaData("AdMob_MaxContentRating","MAX_AD_CONTENT_RATING_G");
此属性的可能值基于 Google 定义的数字内容标签分类:
- MAX_AD_CONTENT_RATING_G
- MAX_AD_CONTENT_RATING_PG
- MAX_AD_CONTENT_RATING_T
- MAX_AD_CONTENT_RATING_MA
要了解有关 AdMob 网络下的 Ad Content Rating 属性的更多信息,请访问此处。
内容网址映射支持
Unity LevelPlay 支持 Google 的应用程序内容映射,并允许使用“Google_Content_Mapping”设置共享 URL。此功能是使用 LevelPlay SDK 7.7.0+、AdMob Adapter 4.3.58+ 已启用的。在此处了解有关 Google 内容映射的更多信息。
要通道单内容网址,请使用以下语法:
LevelPlay.SetMetaData("Google_Content_Mapping","https://www.example.com");
要支持多个 URL,请使用相同的密钥并共享最多 4 个 URL:
LevelPlay.SetMetaData("Google_Content_Mapping",new[] {"https://www.example1.com","https://www.example2.com"});
验证广告网络集成
要验证 LevelPlay 和其他广告网络的集成,请遵循本文档。
后续步骤
要通过 Unity LevelPlay 利用其他广告网络,请集成适配器并按照我们的集成指南进行操作。