# HyprMX 集成

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

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

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

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

## 先决条件##prerequisites

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

  **Rewarded ads integration:**

  * [Unity](/grow/levelplay/sdk/unity/rewarded-ad-integration-package.md)
  * [Android](/grow/levelplay/sdk/android/rewarded-ads-integration.md) Android
  * [iOS](/grow/levelplay/sdk/ios/rewarded-ads-integration.md)
  * [Adobe AIR](/grow/levelplay/sdk/adobe/rewarded-ads-integration.md)
  * [Flutter](/grow/levelplay/sdk/flutter/rewarded-ads-integration.md)
  * [React Native](/grow/levelplay/sdk/react/rewarded-ads-integration.md)

  **Interstitial integration:**

  * [Unity](/grow/levelplay/sdk/unity/interstitial-integration.md)
  * [Android](/grow/levelplay/sdk/android/interstitial-integration.md) Android
  * [iOS](/grow/levelplay/sdk/ios/interstitial-integration.md)
  * [Adobe AIR](/grow/levelplay/sdk/adobe/interstitial-integration.md)
  * [Flutter](/grow/levelplay/sdk/flutter/interstitial-integration.md)
  * [React Native](/grow/levelplay/sdk/react/interstitial-integration.md)

  **Banner integration:**

  * [Unity](/grow/levelplay/sdk/unity/banner-integration.md)
  * [Android](/grow/levelplay/sdk/android/banner-integration.md) Android
  * [iOS](/grow/levelplay/sdk/ios/banner-integration.md)
  * [Adobe AIR](/grow/levelplay/sdk/adobe/banner-integration.md)
  * [Flutter](/grow/levelplay/sdk/flutter/banner-integration.md)
  * [React Native](/grow/levelplay/sdk/react/banner-integration.md)

* 如果从较低的适配器版本升级到 4.1.2 以上版本，请确保在平台中将其 HyprMX 参数重新配置为新的参数。 为了获得 HyprMX 的新参数，您应该联系 [integration@hyprmx.com](mailto:integration@hyprmx.com)。

* HyprMX Android SDK 在 API 16 或更高版本上编译并在 API 28 或更高版本上显示广告服务

* HyprMX iOS SDK 在 iOS 12.0 或更高版本上编译，并在 iOS 15.0 或更高版本上显示广告服务

## 步骤 1.创建 HyprMX 帐户

HyprMX 提供托管服务。要为他们创建帐户，请直接与他们联系：[integration@hyprmx.com](mailto:integration@hyprmx.com)。创建帐户后，他们将帮助您设置应用程序并检索在 LevelPlay 帐户中激活 HyprMx 所需的参数。

## 步骤 2.在 LevelPlay 网络设置模块中激活 HyprMX

HyprMX 帐户中有 3 条数据需要插入到 LevelPlay 网络设置模块中，以便 HyprMX 能够与 ironSource 正常工作：

| **API 密钥**          | 这是帐户在 HyprMX 系统中的唯一标识符。        |
| ------------------- | ------------------------------ |
| **总代理商** **ID**     | 这是 HyprMX 将向其投放广告服务的唯一应用程序标识符。 |
| **放置/位置\*\*\*\*名称** | 这是使用 HyprMX 进行放置/位置的唯一标识符。     |

获取此信息后，必须在 LevelPlay 帐户中\*\*配置 HyprMX 的参数。\*\*正确添加上述信息后，您将能够充分利用 HyprMX 的广告库存和关于 Unity LevelPlay Mediation 的报告数据。

### 将 HyprMX 的参数配置为 LevelPlay 帐户

* 获取上述参数后，登录 IronSource 帐户，然后转到 **Monetize** > **SDK Networks**。

![SDK Networks 设置](/api/media?file=/grow/media/images/1-15.png)

* 从可用广告网络列表中选择 HyprMX，然后输入 HyprMX **API Key**。

![输入 API 密钥](/api/media?file=/grow/media/images/1-16.png)

![输入的 API 密钥](/api/media?file=/grow/media/images/1-17.png)

* 接下来，选择要使用 HyprMX 运行 Unity LevelPlay Mediation 的应用程序，然后选择 **Setup**。然后在相关字段中输入**分销商\*\*\*\* ID** 和**放置/位置名称**。

![Setup HyprMX](/api/media?file=/grow/media/images/1-21.png)

![输入凭据](/api/media?file=/grow/media/images/unnamed-file.png)

* 然后，您将在 Setup Dashboard（设置后台）上看到 HyprMX 为 **Active** for Mediation（激活聚合）。

![活动状态](/api/media?file=/grow/media/images/1-20.png)

## 步骤 3.将 HyprMX 适配器添加到构建中##step-3.-add-the-hyprmxadapter-to-your-build

### Unity Integration Manager（推荐）##unity-integration-manager-(recommended)

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

在 Unity 开发平台中，转到 **LevelPlay > Integration Manager**。

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

### iOS##ios

#### 集成 HyprMX SDK 6.0.0+、适配器版本 4.1.17+##integrating-hyprmx-sdk-6.0.0+-adapter-version-4.1.17+

1. 从项目中移除脚本 Assets/Ironsource/Editor/EmbedHyprMXBinary.cs，因为它不再使用。
2. 选中“始终将主要目标添加到 Podfile”
3. 转到 **Assets > External依赖项管理器 > iOS Resolver > Settings**

#### Integrating HyprMX SDK  5.1.5, Adapter version  4.1.16##integrating-hyprmx-sdk--5.1.5-adapter-version--4.1.16

HyprMx XCFramework 需要“内嵌 & Sign”。

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

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

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

1. 下载 HyprMX Android 适配器

   从[此处](/grow/levelplay/sdk/android/mediation-networks.md)下载适配器。

2. 将 HyprMX 文件添加到 Unity 项目

   将文件导入 `Assets/Plugins/Android/`。

3. 从 LevelPlay Android SDK 版本 6.17.0（HyprMx Android 适配器版本 4.1.5+）开始，HyprMx 适配器将以 AAR 形式发布。仅当打算保持 Jar 集成时，才确保添加 [Android 文档](/grow/levelplay/sdk/android/networks/guides/hyprmx.md)中记录的清单活动。

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

> **Note:**
>
> HyprMX SDK 目前在 iOS 8+ 上编译，但仅在 iOS 12+ 上提供广告服务。

1. \*\*下载 HyprMX iOS 适配器：\*\*请参阅 [iOS 调解网络](/grow/levelplay/sdk/ios/mediation-networks.md)。
2. \*\*将 HyprMX 适配器文件添加到 Unity 项目：\*\*将适配器和框架文件导入 **Assets/Plugins/iOS**
3. \*\*将 SDK 添加到 Xcode 项目中：\*\*由于 Unity3D 不支持 XCFrameworks，请将 SDK XCFrameworks 直接添加到 Xcode 项目中。
4. 将 **XCFramework** 内嵌设置设置为“内嵌和标志”。

#### iOS XCode 项目设置##ios-xcode-project-setup

1. 配置app传输安全 (ATS) 设置
   HyprMX 建议关闭 ATS 设置。为此，请在 Info.plist 中包含 app Transport Security 字典键，如下所示：

   ```objective-c
   <key>NSAppTransportSecurity</key>
   <dict>
       <key>NSAllowsArbitraryLoads</key>
       <true/>
   </dict>
   ```

   如果希望启用 ATS，请将以下键添加到播放器中：

   ```text
   <dict>
       <key>NSAllowsArbitraryLoads</key>
       <true/>
       <key>NSAllowsArbitraryLoadsForMedia</key>
       <true/>
       <key>NSAllowsArbitraryLoadsInWebContent</key>
       <true/>
   </dict>
   ```

   提交申请时，必须说明这些 ATS 设置的理由。HyprMX 建议您注意，您的广告合作伙伴需要从各种来源加载 Web 内容，包括尚不支持 HTTPS 的来源。Apple 已在他们的文档中同意这是可接受的理由。
2. **列表\*\*\*\*声明** iOS 要求广告主在列表中声明使用某些功能，包括用户的摄像机、日历和照片库。将以下所有条目添加到app程序的 plist。

   ```xml
   <key>NSCameraUsageDescription</key>
       <string>${PRODUCT_NAME} 请求对摄像机的写入访问权限</string>
   <key>NSPhotoLibraryAddUsageDescription</key>
       <string>${PRODUCT_NAME} 请求对照片库的写入访问权限</string> 
   <key>NSUserTrackingUsageDescription</key>
       <string>${PRODUCT_NAME} 希望为您提供个性化广告服务</string>
   ```

## 评估广告网络集成##evaluateyour-ad-network-integration

* 验证您的广告网络与我们的 [Integration Helper](/grow/levelplay/sdk/unity/integration-helper.md) 集成。LevelPlay SDK 提供了一个工具，可确保已成功集成我们的 SDK 以及任何其他网络适配器。
* 使用此布尔值管理集成的聚合广告网络的调试日志

  ```text
  IronSource.Agent.setAdaptersDebug(true);
  ```

  设置为 TRUE 时，这行代码将启用调试日志，以帮助您排除所有允许的聚合广告网络的问题。 在 app 与我们的广告单位上线之前，请删除此代码！SDK 6.5.2 及更高版本支持。

## 步骤 4.HyprMX 其他设置##step-4.-hyprmx-additional-settings

### 年龄限制用户##age-restricted-users

Unity LevelPlay 聚合允许发布者将 HyprMX ageRestrictedUser 设置直接传达给 HyprMX 网络。此功能是使用 LevelPlay SDK 7.2.4+、HyprMX Unity 适配器 4.3.2+ 已启用的。

根据 HyprMX，对于参与 Google 播放 的 Designed for Families 计划、在 Google 播放 的 Family 部分中列出或将子项作为目标受众之一的应用程序中的所有用户，建议设置 ageRestrictedUser 参数，以防止标记为子项的终端用户访问 AAID。

在初始化 LevelPlay SDK **之前**设置标志。

使用以语法 HyprMX 标志设置为 ageRestrictedUser 参数 true：

```cs
LevelPlay.SetMetaData("HyprMX_ageRestricted","true");
```

使用以语法 HyprMX 标志与 ageRestrictedUser 参数 False 一起设置：

```cs
LevelPlay.SetMetaData("HyprMX_ageRestricted","false");
```

现在可以在应用程序中交付 HyprMX。

## 后续步骤##next-steps

要通过 Unity LevelPlay Mediation 利用其他广告网络，请集成适配器并按照我们的集成指南进行操作。

**Platform adapters:**

* [Unity](/grow/levelplay/sdk/unity/mediation-networks.md)
* [Android](/grow/levelplay/sdk/android/mediation-networks.md)
* [iOS](/grow/levelplay/sdk/ios/mediation-networks.md)
* [Adobe AIR](/grow/levelplay/sdk/adobe/mediation-networks.md)
* [Flutter](/grow/levelplay/sdk/flutter/mediation-networks.md)
* [React Native](/grow/levelplay/sdk/react/mediation-networks.md)
