# Unity Ads 集成

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

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

本指南将逐步说明如何在 Unity LevelPlay 上将 Unity Ads 设置为广告网络。

对于 Unity Ads 网络，在完成以下步骤 1 后，可使用自动设置工具。自动设置工具将创建 app 和出价者放置/位置并从 Unity Ads 检索放置/位置详细信息，因此无需在 LevelPlay 和 Unity Ads 平台之间切换。或者，也可以手动完成整个设置。

## 先决条件##prerequisites

确保将奖励广告服务、插页式广告服务或横幅广告服务正确集成到应用程序中。请参阅以下指定的于平台的指南以了解集成说明：

**Rewarded ads integration:**

* [Unity](/grow/levelplay/sdk/unity/rewarded-ad-integration-package.md.md)
* [Android](/grow/levelplay/sdk/android/rewarded-ads-integration.md.md)
* [iOS](/grow/levelplay/sdk/ios/rewarded-ads-integration.md.md)
* [Adobe Air](/grow/levelplay/sdk/adobe/rewarded-ads-integration.md.md)
* [Flutter](/grow/levelplay/sdk/flutter/rewarded-ads-integration.md.md)
* [原生反应](/grow/levelplay/sdk/react/rewarded-ads-integration.md.md)

**Interstitial integration:**

* [Unity](/grow/levelplay/sdk/unity/interstitial-integration.md.md)
* [Android](/grow/levelplay/sdk/android/interstitial-integration.md.md)
* [iOS](/grow/levelplay/sdk/ios/interstitial-integration.md.md)
* [Adobe Air](/grow/levelplay/sdk/adobe/interstitial-integration.md.md)
* [Flutter](/grow/levelplay/sdk/flutter/interstitial-integration.md.md)
* [原生反应](/grow/levelplay/sdk/react/interstitial-integration.md.md)

**Banner integration:**

* [Unity](/grow/levelplay/sdk/unity/banner-integration.md.md)
* [Android](/grow/levelplay/sdk/android/banner-integration.md.md)
* [iOS](/grow/levelplay/sdk/ios/banner-integration.md.md)
* [Adobe Air](/grow/levelplay/sdk/adobe/banner-integration.md.md)
* [Flutter](/grow/levelplay/sdk/flutter/banner-integration.md.md)
* [原生反应](/grow/levelplay/sdk/react/banner-integration.md.md)

## 步骤 1. 设置 Unity Ads

在设置 Unity Ads 之前，请完成以下步骤：

1. [创建 Unity ID](/cloud/accounts/create-account.md.md)
2. [注册 Unity](https://cloud.unity.com)

> **Note:**
>
> 完成步骤 1 后，可以跳到[步骤 4](/grow/levelplay/sdk/unity/mediation-network-guides.md.md)，并使用自动出价器设置工具在 Unity LevelPlay 上启动并运行 Unity Ads 出价器。如果希望继续进行手动设置，请继续执行步骤 2。

## 步骤 2.在 Unity Ads 上创建项项目

按照以下步骤在 Unity Ads 上创建 app：

### 创建 app

1. 在 [Unity Monetization Dashboard](https://cloud.unity.com/monetization) 上，选择 **Projects**（项目）。

2. 选择 \*\*Organization，\*\*然后选择 **Projects**

3. 选择 **Create project**（创建项目）

   ![创建项目按钮](/api/media?file=/grow/media/images/Screenshot-2023-04-30-at-5.45.44.png)

4. 输入项目名称和 [COPPA](https://www.ftc.gov/enforcement/rules/rulemaking-regulatory-reform-proceedings/childrens-online-privacy-protection-rule) 定位

5. 选择 **Create project**（创建项目）

   ![创建项目表单](/api/media?file=/grow/media/images/Screenshot-2023-04-30-at-5.47.25.png)

要变现项目，需要在控制面板中启用 Unity Ads。要从 Monetization（变现）后台的二级导航菜单中选择 **Get started（开始使用**）。

为项目初始化 Unity Ads 时，必须选择聚合提供商。选择 **I plan to use Mediation**（我计划使用聚合）。然后在 **Choose your Mediation Partner** 下选择 **Unity LevelPlay。**
![选择聚合合作伙伴](/api/media?file=/grow/media/images/Screenshot-2023-04-30-at-5.48.59.png)

### 创建广告单元

使用[广告单元](/grow/levelplay/platform/get-started/ad-units.md.md)可显示游戏中触发广告内容的事件：

1. 从左侧导航菜单中，选择 **Monetization（变现）> Ad Units（广告单位**）。
2. 选择 **Add Ad Unit**（添加广告单元）以显示创建模式
3. 输入广告单元名称，然后选择平台（iOS 或 Android）和[广告格式](/grow/levelplay/platform/get-started/ad-units.md.md)（奖励广告服务、插页式广告或横幅广告）。
4. 选择 **Create**（创建）以保存您的广告单元

### 添加放置/位置

创建项目后，导航到 **Monetization > Placements**，并记下这两个平台的**游戏 ID**。

![游戏 ID 位置](/api/media?file=/grow/media/images/Screenshot-2023-04-30-at-8.42.10.png)

要创建新的放置/位置，请选择 **添加放置/位置**。

> **Note:**
>
> 虽然 Unity Ads 在首次创建项项目会自动创建“默认” 广告位，但我们建议为每个 Unity Ads 聚合配置创建新的唯一广告位。

## 步骤 3.获取凭据

您需要从 Unity Ads 平台检索以下详细信息才能在 LevelPlay 上完成设置：

* API 密钥
* 组织核心 ID
* 密钥 ID
* Secret key

导航到 **Set up > API Management**，并记下 **API Key**。

![API 密钥位置](/api/media?file=/grow/media/images/Screenshot-2023-04-30-at-8.42.33.png)

然后，导航到组织设置并记下**组织核心 ID**。

![Organization core ID](/api/media?file=/grow/media/images/Screenshot-2023-04-30-at-8.43.02.png)

要获取**密钥 ID 和密钥**，请导航到 \*\*Monetization，\*\*然后导航到 \*\*API Management。\*\*选择 **Create LevelPlay 服务帐户**，随后将显示一个模式，其中包含您的密钥 ID 和密钥。请务必保存密钥，因为在关闭模态后将无法再次获取密钥。
![创建 LevelPlay 服务帐户](/api/media?file=/grow/media/images/Screen-Shot-2023-06-19-at-12.03.32-2.png)

## 步骤 4.在 LevelPlay 配置 Unity Ads 

获得所有这些参数后，日志 LevelPlay 帐户。

* 转到“**Mediation**”>“**Setup**”>“**SDK Networks**”。

  ![SDK Networks 页面](/api/media?file=/grow/media/images/Screenshot-2023-07-11-at-10.01.15-1.png)

* 从可用网络列表中选择 Unity Ads

* 在相关字段中输入 Unity Ads **API Key** 和 **Organizational Core ID**

  ![Unity Ads API 密钥和组织 ID](/api/media?file=/grow/media/images/Unity-updated-1-1-1.png)

* 要激活自动设置功能，请在 Unity Ads 自动设置工具上切换。这将启用在 Unity Ads 平台上自动创建 app 和出价者的放置/位置，并允许 LevelPlay 从 Unity Ads 检索放置/位置详细信息

* 切换自动设置工具后，输入密钥 ID 和密钥（从步骤 3 开始）。然后，选择 **保存**
  ![Unity Ads 自动设置配置](/api/media?file=/grow/media/images/Unity-updated-2-1.png)

> **Note:**
>
> 如果打开自动设置工具，仍然可以在 LevelPlay 上手动配置 Unity Ads 出价。

## 步骤 5：在 app 级别设置 Unity Ads

### 传统瀑布流设置 

* 从 SDK Networks 页面左侧的列表中选择要集成的app程序
* 在广告单元行中，选择 **Setup**，然后在相关广告单元设置下输入**游戏 ID** 和**放置/位置** **ID**
  ![Unity Ads 瀑布流设置](/api/media?file=/grow/media/images/F15F95A0-A7C7-40AF-A955-8C9BE6DB9621.png)
* 然后，您将在设置控制面板 (Setup Dashboard) 上看到 Unity Ads 已**激活**。

### 出价人设置

有两种方法可以在 LevelPlay 上设置 Unity Ads 出价人：

1. **Auto-setup** - 在 Unity Monetize（变现）后台上自动创建新 app 和广告位，并在 LevelPlay 上填充所有必要的设置
2. **Manual** - 在 LevelPlay 和 Unity Ads 平台上手动输入必要的 app 详细信息

**自动设置**

* 选择要在 Unity Ads 中运行插页式广告、奖励广告或横幅广告服务的app。然后在 Unity Ads 行中选择 define 图标

  ![Unity Ads 出价者设置图标](/api/media?file=/grow/media/images/Screenshot-2023-07-11-at-10.20.55.png)

* 选择 **Add Bider**（添加出价者）可在 Unity Ads 平台上自动创建新的 app 和竞价广告位，并导入游戏 ID 和放置/位置 ID。如果有一个已经所挂的游戏 ID 已附加到 app，如果至少有 1 个没有放置/位置 ID 参数值的放置/位置，则可以使用自动设置工具。在这种情况下，将创建新的竞价放置/位置（用于游戏 ID 插入）

  ![添加出价者自动设置](/api/media?file=/grow/media/images/68A72BE2-91CF-4DA0-8CD4-70FE035A8120-1-1-1.png)

选择 **保存** 以批准并接受所有配置。如果未保存模块，则会在 Unity Ads 平台上创建资源，而不会将数据导入 LevelPlay 平台。

\*\*重要信息：\*\*Unity Ads 出价者实例的状态与 ironSource 广告服务出价者的状态相同（按广告单元）。例如，如果您不使用 ironsource 广告服务出价器获取奖励广告服务，则不会针对 Unity Ads 网络自动激活此出价器。要激活奖励广告服务的 Unity Ads 竞价实例，请选择 Unity Ads 行并在广告单元上切换。 

**手动设置**

* 选择要从 Unity Ads 运行插页式广告服务或奖励广告的app

* 从 Ad Networks 的设置列表中选择 Unity Ads，选择 define 图标，然后在相关字段中插入游戏 ID 和放置/位置 ID

* 选择 **保存**

现在，您将看到 Unity Ads 在帐户中选择的广告单位处于激活状态。

## 步骤 6。将 Unity Ads 适配器添加到构建中##step-6.-add-the-unity-ads-adapter-to-your-build

### Adobe AIR 插件##adobe-air-plugin

1. **下载 Unity Ads ANE**：将 Unity Ads Adobe 原生扩展 (ANE) 添加到构建中。可在[此处](/grow/levelplay/sdk/adobe/mediation-networks.md)找到 Unity LevelPlay 的最新 Unity Ads ANE。\*\*重要信息！\*\*确保下载适配器和 SDK 文件。

2. 通过单击项目**属性** > **Flex** **构建\*\*\*\*路径** > **原生\*\*\*\*扩展**选项卡将 ANE 添加到项目中。 选择 **Add ANE** 并选择在上一步中下载的文件。确保在 **Flex 构建打包** > **原生扩展选项卡**上标记要打包到应用程序中的 **ANE**，并选中 **软件包** 复选框。

3. 确保为 Android 和 iOS 添加以下扩展：

   ```text
   <extensionID>com.ironsource.adobeair.unityads</extensionID>
   <extensionID>com.ironsource.adobeair.unityadssdk</extensionID>
   ```

4. 仅适用于 Android - 更新 AndroidManifest.xml

   从 Unity Ads Android 适配器版本 4.3.4+（Android SDK 版本 6.17.0）开始，Unity Ads 适配器将以 AAR 形式发布。如果您打算保持 Jar 集成，请添加清单。

   ```xml
               <!-- UnityAds -->
           <activity
               android:name="com.unity3d.services.ads.adunit.AdUnitActivity"
               Android:configChanges="fontScale|keyboard|keyboardHidden|locale|mnc|mcc|导航|orientation|screenLayout|screenSize|smallestScreenSize|uiMode|touchscreen"
               android:exported="false"
               android:hardwareAccelerated="true"
               android:theme="@android:style/Theme.NoTitleBar.Fullscreen" />
           <activity
               android:name="com.unity3d.services.ads.adunit.AdUnitTransparentActivity"
               Android:configChanges="fontScale|keyboard|keyboardHidden|locale|mnc|mcc|导航|orientation|screenLayout|screenSize|smallestScreenSize|uiMode|touchscreen"
               android:exported="false"
               android:hardwareAccelerated="true"
               android:theme="@android:style/Theme.Translucent.NoTitleBar.Fullscreen" />
           <activity
               android:name="com.unity3d.services.ads.adunit.AdUnitTransparentSoftwareActivity"
               Android:configChanges="fontScale|keyboard|keyboardHidden|locale|mnc|mcc|导航|orientation|screenLayout|screenSize|smallestScreenSize|uiMode|touchscreen"
               android:exported="false"
               android:hardwareAccelerated="false"
               android:theme="@android:style/Theme.Translucent.NoTitleBar.Fullscreen" />
           <activity
               android:name="com.unity3d.services.ads.adunit.AdUnitSoftwareActivity"
               Android:configChanges="fontScale|keyboard|keyboardHidden|locale|mnc|mcc|导航|orientation|screenLayout|screenSize|smallestScreenSize|uiMode|touchscreen"
               android:exported="false"
               android:hardwareAccelerated="false"
               android:theme="@android:style/Theme.NoTitleBar.Fullscreen" />
           <activity
               android:name="com.unity3d.ads.adplayer.FullScreenWebViewDisplay"
               Android:configChanges="fontScale|keyboard|keyboardHidden|locale|mnc|mcc|导航|orientation|screenLayout|screenSize|smallestScreenSize|uiMode|touchscreen"
               android:exported="false"
               android:hardwareAccelerated="true"
               android:theme="@android:style/Theme.NoTitleBar.Fullscreen" />
           <提供者
               android:name="androidx.startup.InitializationProvider"
               android:authorities="${applicationId}.androidx-startup" >
               <元数据
                   android:name="androidx.lifecycle.ProcessLifecycleInitializer"
                   android:value="androidx.startup" />
               <元数据
                   android:name="com.unity3d.services.core.configuration.AdsSdkInitializer"
                   android:value="androidx.startup" />
           </provider>
   ```

**Xamarin 插件（Android 集成）**

1. \*\*下载 Unity Ads Xamarin 插件：\*\*将 **IronSourceUnityAds\*\*\*\*Adapter-Android\_v4.1.3.dll** 导入 Xamarin 项目。您可以在[此处](https://bintray.com/ironsource-mobile/xamarin-android-adapters/download_file?file_path=IronSourceUnityAdsAdapter-Android_v4.1.3.dll)找到最新的 Unity Ads Xamarin dll。
2. **将 Unity Ads 文件添加到 Xamarin 项目中：**
   1. 右键单击**引用** – **编辑引用** 
   2. 导航到 .**Net Assembly** 选项卡，然后选择 **Browse**（浏览）
   3. 选择刚下载的文件
3. **仅适用于 Android - Update AndroidManifest.xml：**

   ```xml
               <!-- UnityAds -->
           <activity
               android:name="com.unity3d.services.ads.adunit.AdUnitActivity"
               Android:configChanges="fontScale|keyboard|keyboardHidden|locale|mnc|mcc|导航|orientation|screenLayout|screenSize|smallestScreenSize|uiMode|touchscreen"
               android:exported="false"
               android:hardwareAccelerated="true"
               android:theme="@android:style/Theme.NoTitleBar.Fullscreen" />
           <activity
               android:name="com.unity3d.services.ads.adunit.AdUnitTransparentActivity"
               Android:configChanges="fontScale|keyboard|keyboardHidden|locale|mnc|mcc|导航|orientation|screenLayout|screenSize|smallestScreenSize|uiMode|touchscreen"
               android:exported="false"
               android:hardwareAccelerated="true"
               android:theme="@android:style/Theme.Translucent.NoTitleBar.Fullscreen" />
           <activity
               android:name="com.unity3d.services.ads.adunit.AdUnitTransparentSoftwareActivity"
               Android:configChanges="fontScale|keyboard|keyboardHidden|locale|mnc|mcc|导航|orientation|screenLayout|screenSize|smallestScreenSize|uiMode|touchscreen"
               android:exported="false"
               android:hardwareAccelerated="false"
               android:theme="@android:style/Theme.Translucent.NoTitleBar.Fullscreen" />
           <activity
               android:name="com.unity3d.services.ads.adunit.AdUnitSoftwareActivity"
               Android:configChanges="fontScale|keyboard|keyboardHidden|locale|mnc|mcc|导航|orientation|screenLayout|screenSize|smallestScreenSize|uiMode|touchscreen"
               android:exported="false"
               android:hardwareAccelerated="false"
               android:theme="@android:style/Theme.NoTitleBar.Fullscreen" />
           <activity
               android:name="com.unity3d.ads.adplayer.FullScreenWebViewDisplay"
               Android:configChanges="fontScale|keyboard|keyboardHidden|locale|mnc|mcc|导航|orientation|screenLayout|screenSize|smallestScreenSize|uiMode|touchscreen"
               android:exported="false"
               android:hardwareAccelerated="true"
               android:theme="@android:style/Theme.NoTitleBar.Fullscreen" />
           <提供者
               android:name="androidx.startup.InitializationProvider"
               android:authorities="${applicationId}.androidx-startup" >
               <元数据
                   android:name="androidx.lifecycle.ProcessLifecycleInitializer"
                   android:value="androidx.startup" />
               <元数据
                   android:name="com.unity3d.services.core.configuration.AdsSdkInitializer"
                   android:value="androidx.startup" />
           </provider>
   ```

### Xamarin 插件（iOS 集成）##xamarinplugin-(iosintegration)

下载 Unity Ads 框架并按所述将其添加到项目中。

您现在可以在应用程序中投放 Unity Ads 广告服务。

## 后续步骤##next-steps

要通过 LevelPlay Mediation 利用其他广告网络，请集成[适配器](/grow/levelplay/sdk/unity/mediation-networks.md.md)，然后遵循我们的集成指南。
