# Google Ad Manager 集成

> 通过创建 Ad Manager 帐户、添加 app 和配置广告单位，将 Google Ad Manager 设置为 Unity LevelPlay 上的广告网络。

> **Important:**
>
> 以下文档涉及非 Unity 开发、拥有或运营的产品或服务（“第三方产品”）。
> 这些信息可能已过时或不完整，仅为方便您参考才提供。
> 您对任何第三方产品的使用均受产品自身条款的约束。
> Unity 对这些产品不提供任何担保，也不对因使用这些产品而造成的任何损害或损失负责，包括与第三方供应商提供的内容、广告或材料有关的问题。

按照以下说明将 Google Ad Manager 设置为 Unity LevelPlay 聚合中的广告网络。

> **Note:**
>
> 要查看此聚合网络的适配器更改日志，请参阅 [Unity 聚合网络](/grow/levelplay/sdk/unity/mediation-networks.md.md#integrate-network-adapters)。

## 先决条件##prerequisites

确保在应用程序中正确集成 LevelPlay SDK [插页式](/grow/levelplay/sdk/unity/interstitial-integration.md)、[奖励式](/grow/levelplay/sdk/unity/rewarded-ad-integration-package.md)或[横幅式聚合](/grow/levelplay/sdk/unity/banner-integration.md)。

从 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.创建 Google Ad Manager 帐户

1. 要通过 Unity LevelPlay 的聚合访问 Google Ad Manager 广告库存，请[创建 Ad Manager 帐户](https://admanager.google.com/home/)。
2. 为了使用 Google AdSense Manager 进行变现，需要创建 Google AdSense 帐户
3. 将 AdSense 帐户连接到 Ad Manager 帐户

## 步骤 2.在 Google Ad Manager 中创建清单

1. 可在[此处](https://support.google.com/admanager/answer/6238692?hl=en)找到 Google AdManager 指南
2. 订单：
   1. 至少添加一个订单
   2. 将 AdSense 作为广告主连接到订单
3. 行项目
   1. 为要变现的每个广告单元添加一个广告系列 (Line Item)（Int/RV/BN/NTV BN）
   2. 选择视频行项目
   3. 商品类型 = 广告交换
4. Apps（应用）
   1. 应用程序应从 Admob 帐户自动添加
   2. 否则，请创建一个新应用程序（Inventory > Apps > 添加 app）
5. 广告单元
   1. 为每个价格点添加广告单元

## 步骤 3.在您的 LevelPlay 帐户中激活 **Google Ad Manager**

在 LevelPlay SDK Networks Setup 页面上设置 Ad Manager 时，请登录 Google 帐户。这将确保自动获取运行 Ad Manager 插页、奖励广告服务和横幅广告的所有必要参数。

1. 在 Google Ad Manager 帐户中，获取以下信息： 

| App ID（应用 ID）     | Ad Manager（广告管理器）后台上分配给 app 的唯一 ID                                               |
| ----------------- | -------------------------------------------------------------------------------- |
| API 密钥            | Ad Manager 帐户的唯一标识符。这允许 Unity LevelPlay Mediation 从 Ad Manager 帐户导入性能数据，以用于报告和优化 |
| 广告单元 ID           | Ad Manager（广告管理器）后台上分配给 app 广告单元的唯一 ID                                           |
| Client ID（客户端 ID） | 指定帐户与广告单元之间关系的唯一标识符                                                              |
| 客户端密钥             | 与客户端 ID 配对的密钥                                                                    |
| 刷新令牌              | 客户端应用程序已收到的刷新令牌                                                                  |

2. 在 LevelPlay 帐户中配置 Google Ad Manager 的参数。

* 登录您的 ironSource 帐户，然后转到 **Monetize** > **SETUP** > **SDK Networks**。

![SDK 网络](/api/media?file=/grow/media/images/Level-Play-SDK.jpg)

* 从 **Available Networks** 列表中选择 Google Ad Manager，然后输入 Ad Manager 的 **API Key**、**客户端** **ID**、**客户端 Secret** 和 **Refresh Token**；或选择 **Login with Google** 选项。

![登录凭据](/api/media?file=/grow/media/images/1-1.png)

![使用 Google 登录](/api/media?file=/grow/media/images/2.png)

* 选择 **Save（保存）**。Ad Manager 将已启用并列在 **Available Ad Networks** 表中。
* 从广告网络的设置列表中选择 Ad Manager，然后选择 Tool **Define** 按钮。在 **interstitial**、**rewarded** 或 **banner 设置**下插入 **app ID** 和 **Ad Unit** **ID**。
  ![app and Ad Unit configuration](/api/media?file=/grow/media/images/4.png)（应用和广告单元配置）- 验证与 Reporting API 的集成。此列将通过 Reporting API 检查您的集成情况，并返回三种可能的响应：Verified、Failed 和 No Response。如果您没有看到 **Verified，请**仔细检查您的集成和您输入的信息，然后选择 **Retry**，直到看到 **Verified**。

## 步骤 4.将 Admob Adapter 添加到构建中##step-4.-add-the-admob-adapter-to-your-build

### Unity Network Manager（推荐）##unity-network-manager-(recommended)

完成 SDK 集成后，可使用 Unity Network Manager 下载 AdMob 适配器。

在 Unity 开发平台中，转到广告服务聚合 > Network Manager。

如果您已经拥有最新版本的适配器，则**操作**按钮将更改为 " Updated " 并已禁用。

### Android（手动解析）##android-(manual-resolve)

要应用更改，请确保使用“Resolve”过程。这将根据您的选择下载所有相关工件。有关详细信息，请参阅[此处](/grow/levelplay/sdk/unity/package-integration.md)的说明。 

#### 添加 AdMob app ID##add-admob-app-id

**Android** 从 V17.0.0 \*\*（适配器版本 4.3.1 及更高版本）\*\*开始，AdMob 的 SDK 要求发布者将其 AdMob app ID 作为 `<application></application>` 标签的子项添加到 app 的 AndroidManifest：

```java
<meta-data android:name="com.google.android.gms.ads.APPLICATION_ID"
           android:value="[ADMOB_APP_ID]"/>

```

将 `[ADMOB_APP_ID]` 替换为您在步骤 3 中获取的 app ID 值。否则会导致 AdMob 的 SDK 引发的崩溃。如需了解更多信息，请参阅 [AdMob 指南](https://developers.google.com/admob/android/quick-start#update_your_androidmanifestxml)。

**iOS** 从 V7.42.0 \*\*（适配器版本 4.3.3 以上）\*\*开始，AdMob 的 SDK 要求发布者将其 AdMob app ID 添加到 app 的 plist 中，如[此处](https://developers.google.com/admob/ios/quick-start#update_your_infoplist)所述。或者，可以通过编程方式做出此更改

```text
<key>GADApplicationIdentifier</key>
<string>[APP_ID]</string>
```

将 `GADApplicationIdentifier` 值替换为您在步骤 3 中获取的 app ID 值。

#### Android 插件手册集成##android-plugin-manual-integration

1. \*\*下载 Android **广告**适配器：\*\*从[此处](/grow/levelplay/sdk/android/mediation-networks.md)下载 AdMob 适配器和 AdMob SDK (AAR)。
2. \*\*将 **Admob** 文件添加到 Unity 项目中：\*\*将文件导入 **Assets/Plugins/Android/**。
3. 添加 [Android 文档](/grow/levelplay/sdk/android/networks/guides/google-admob.md)中指出的清单活动。
4. 将 AdMob app ID 作为 `<application></application>` 标签的子项添加到 app 的 AndroidManifest：

   ```java
   <meta-data android:name="com.google.android.gms.ads.APPLICATION_ID"
              android:value="[ADMOB_APP_ID]"/>

   ```

   将 `[ADMOB_APP_ID]` 替换为您在步骤 3 中获取的 app ID 值。否则会导致 AdMob 的 SDK 引发的崩溃。如需了解更多信息，请参阅 [AdMob 指南](https://developers.google.com/admob/android/quick-start#update_your_androidmanifestxml)。

#### iOS 插件手动集成##ios-plugin-manual-integration

1. \*\*下载 AdMob iOS 适配器：\*\*请参阅 [iOS 调解网络](/grow/levelplay/sdk/ios/mediation-networks.md)。
2. \*\*将 AdMob 适配器添加到 Unity 项目：\*\*将 AdMob 适配器文件导入 **Assets/Plugins/iOS。**
3. \*\*将 SDK 添加到 Xcode 项目中：\*\*由于 Unity3D 不支持 XCFrameworks，请将 SDK XCFrameworks 直接添加到 Xcode 项目中。
4. 将 AdMob app ID 添加到 app 的 plist（如[此处](https://developers.google.com/admob/ios/quick-start#update_your_infoplist)所述）。或者，可以通过编程方式做出此更改

   ```text
   <key>GADApplicationIdentifier</key>
   <string>[APP_ID]</string>
   ```

   将“GADApplicationIdentifier”值替换为您在步骤 3 中检索的 app ID 值。

## 步骤 5。其他步骤##step-5.-additional-steps

### 面向子项的设置 - COPPA##child-directed-setting---coppa

Unity LevelPlay 的聚合功能允许发布者将 AdMob Child 定向设置直接传递给 AdMob 网络。此功能是使用 LevelPlay SDK 6.14.0+、AdMob Unity 适配器 4.3.12+ 已启用的。

使用以下语法，使用参数“True”设置 AdMob **setTagForChildDirectedTreatment**：

```text
LevelPlay.SetMetaData("AdMob_TFCD","true");
```

使用以下语法，使用参数“False”设置 AdMob **setTagForChildDirectedTreatment**：

```text
LevelPlay.SetMetaData("AdMob_TFCD","false");
```

要了解有关 AdMob 网络下面向儿童的设置的更多信息，请访问[此处](https://developers.google.com/admob/android/targeting#child-directed_setting)。

### 未满同意年龄的用户 - GDPR##users-under-the-age-of-consent---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”：

```text
LevelPlay.SetMetaData("AdMob_TFUA","true");
```

使用以下语法将 **setTagForUnderAgeOfConsent** 设置为“False”：

```text
LevelPlay.SetMetaData("AdMob_TFUA","false");
```

要了解有关 AdMob 网络下面向儿童的设置的更多信息，请访问[此处](https://developers.google.com/admob/android/targeting#users_under_the_age_of_consent)。

### 广告内容过滤##ad-content-filtering

Unity LevelPlay 的聚合功能允许发布者与 AdMob 网络通信，为所有广告请求提供最高广告内容评级。此功能是使用 LevelPlay SDK 7.12.0+、AdMob Android 适配器 4.3.23+ 已启用的。

使用以下语法设置 maxAdContentRating：

```cs
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 属性的更多信息，请访问[此处](https://developers.google.com/admob/unity/targeting#ad_content_filtering)。

#### 内容网址映射支持##content-url-mapping-support

Unity LevelPlay 支持 Google 的应用程序内容映射，并允许使用“Google\_Content\_Mapping”设置共享 URL。此功能是使用 LevelPlay SDK 7.7.0+、AdMob Adapter 4.3.58+ 已启用的。在[此处](https://support.google.com/admob/answer/11050896)了解有关 Google 内容映射的更多信息。

要通道单内容网址，请使用以下语法：

```cs
LevelPlay.SetMetaData("Google_Content_Mapping","https://www.example.com");
```

要支持多个 URL，请使用相同的密钥并共享最多 4 个 URL：

```cs
LevelPlay.SetMetaData("Google_Content_Mapping",new[] {"https://www.example.com","https://www.example2.com"});
```

## 验证广告网络集成##verify-your-ad-network-integration

要验证 LevelPlay SDK 和其他广告网络的集成情况，请遵循本[文档](/grow/levelplay/sdk/unity/integration-helper.md)。

## 后续步骤##next-steps

要利用其他聚合广告网络，请集成[适配器](/grow/levelplay/sdk/react/mediation-networks.md)并按照我们的集成指南进行操作。
