将 DT Exchange 与中介集成

本指南将向您介绍如何使用 Google 移动广告 SDK 加载和展示 使用“ 中介、 涵盖广告瀑布流集成介绍了如何向广告添加 DT Exchange 广告单元的中介配置以及如何集成 DT Exchange SDK 和 转换为 Android 应用。

支持的集成和广告格式

DT Exchange 中介适配器具有以下功能:

集成
出价
瀑布
表现形式
横幅
插页式广告
激励广告
原生

要求

  • Android API 级别 21 或更高级别
  • 最新版 Google 移动广告 SDK

  • 完成中介流程 入门指南

第 1 步:在 DT Exchange 界面中设置配置

添加新的应用和广告展示位置

注册登录 DT Exchange 控制台。

点击 Add App(添加应用)按钮添加您的应用。

管理应用

选择您的平台,填写表单的其余部分,然后点击添加展示位置

在标记为 Name your Placement 的字段中输入新展示位置的名称,然后从下拉列表中选择所需的展示位置类型。最后,点击 Save Placement(保存展示位置)。

初始设置

应用 ID 和展示位置 ID

将鼠标悬停在左侧导航栏上,将其打开。然后,点击左侧菜单中的应用

菜单

应用管理页面上,记下您应用旁边的应用 ID

应用 ID

选择您的应用,前往展示位置标签页,然后点击展示位置名称旁边的复制图标。记下展示位置 ID

展示位置 ID

发布商 ID、使用方键值和使用方密钥

点击左侧菜单中的用户名,然后选择用户个人资料

用户个人资料菜单

记下发布商 ID使用方键值使用方密钥,因为下一步中会用到这些信息。

用户个人资料

第 2 步:在界面中设置 DT Exchange 需求 Ad Manager

为广告单元配置中介设置

登录您的 Ad Manager 帐号

依次转到投放 > 收益组,然后点击新建收益组按钮。

为您的收益组输入一个独一无二的名称,将状态设为有效,选择广告格式,然后将广告资源类型设为移动应用。在定位 > 广告资源部分下,选择广告资源移动应用(您要向其中添加中介)下方的广告单元。

接下来,点击添加收益合作伙伴按钮。

如果您已有DT Exchange的收益合作伙伴,可以选择它。否则,请选择创建新的收益合作伙伴

选择 DT Exchange 作为广告联盟,输入一个具有唯一性的名称并启用中介

开启自动收集数据,然后输入在上一部分中获取的Publisher ID, Consumer Secret and Consumer Key

选择收益合作伙伴后,选择移动 SDK 中介作为集成类型,选择 Android 作为平台,选择有效作为状态。输入在上一部分获得的Application ID and Placement ID 。然后,输入默认每千次展示费用值。

完成后,点击页面底部的保存

将 Fyber 添加到 GDPR 和美国州级法规广告合作伙伴列表

按照 GDPR 设置美国州级法规设置 中的步骤,将 Fyber 添加到 Ad Manager 界面中的 GDPR 和美国州级法规广告合作伙伴列表中。

第 3 步:导入 DT Exchange SDK 和适配器

在应用级 build.gradle.kts 文件中,添加以下实现 依赖项和配置使用最新版本的 DT Exchange SDK 和适配器:

dependencies {
    implementation("com.google.android.gms:play-services-ads:23.2.0")
    implementation("com.google.ads.mediation:fyber:8.2.7.0")
}

手动集成

  • 下载最新版本的 Android 版 DT Exchange SDK,并将 以下文件添加到您的项目中:
    • ia-mraid-kit-release-x.y.z.aar
    • ia-sdk-core-release-x.y.z.aar
    • ia-video-kit-release-x.y.z.aar
  • 前往 DT Exchange 适配器工件 。选择最新版本,下载 DT Exchange 适配器的 .aar 文件,并将其添加到您的项目。

第 4 步:在 DT Exchange SDK 上实现隐私设置

根据 Google 欧盟地区用户意见征求 政策,因此您必须确保向 Google 披露特定信息,并且 针对欧洲经济区 (EEA) 境内用户就 设备标识符和个人数据的使用。此政策反映了 欧盟《电子隐私指令》和《一般数据保护条例》的要求 条例 (GDPR)。在征求用户意见时,您必须指明每个广告联盟 可能会收集、接收或使用个人数据的中介链 提供有关每个网络使用情况的信息。Google 目前无法 自动将用户的意见选择传递给此类广告网络。

DT Exchange 包含一个 API,可让您将用户同意情况转发给他们的 SDK。通过 以下示例代码展示了如何将意见征求信息传递给 DT Exchange SDK 手动完成。如果您选择将意见征求信息传递给 DT Exchange SDK 手动进行调用,建议您在请求广告前先调用此代码 Google 移动广告 SDK

Java

import com.fyber.inneractive.sdk.external.InneractiveAdManager;
// ...

InneractiveAdManager.setGdprConsent(true);
InneractiveAdManager.setGdprConsentString("myGdprConsentString");

Kotlin

import com.fyber.inneractive.sdk.external.InneractiveAdManager
// ...

InneractiveAdManager.setGdprConsent(true)
InneractiveAdManager.setGdprConsentString("myGdprConsentString")

访问 DT Exchange 的 GDPR 资源页面及其 GDPR 实现指南 了解更多详细信息以及该方法中可能提供的值。

美国州级隐私保护法律

美国州级隐私保护法律 要求向用户提供 以拒绝“销售”交易的“个人信息”(因为法律规定 这些条款),同时在其页面上以醒目方式显示“Do Not Sell My Personal”(不出售我的个人数据) 信息”请点击“销售”链接主页。通过 美国州/省/自治区/直辖市隐私权 法律合规指南提供了一项新功能, 受限的数据处理 用于 Google 广告投放,但 Google 无法将此设置应用于每个广告, 您的中介链中的广告联盟。因此,您必须找出每个广告联盟 可能参与销售个人数据或 并遵循每个广告联盟提供的指导, 合规性。

DT Exchange 包含一个 API,可让您将用户同意情况转发给他们的 SDK。通过 以下示例代码展示了如何将意见征求信息传递给 DT Exchange SDK 手动完成。如果您选择将意见征求信息传递给 DT Exchange SDK 手动进行调用,建议您在请求广告前先调用此代码 Google 移动广告 SDK

Java

import com.fyber.inneractive.sdk.external.InneractiveAdManager;
// ...

InneractiveAdManager.setUSPrivacyString("myUSPrivacyString");

Kotlin

import com.fyber.inneractive.sdk.external.InneractiveAdManager
// ...

InneractiveAdManager.setUSPrivacyString("myUSPrivacyString")

请访问 DT Exchange 的 CCPA 资源页面及其 CCPA 实施指南 了解更多详细信息以及该方法中可能提供的值。

第 5 步:添加所需的代码

DT Exchange 集成不需要其他代码。

第 6 步:测试实现效果

启用测试广告

请务必为 Ad Manager。

验证测试广告

如需验证您收到的是来自DT Exchange的测试广告,请使用相应广告来源在广告检查器中启用单一广告来源测试DT Exchange (Waterfall)

可选步骤

广告联盟专有参数

DT Exchange 适配器还支持 以 Android Bundle 的形式传递到适配器适配器会查找以下内容 键:

请求参数和值
InneractiveMediationDefs.KEY_AGE 整数。用户的年龄
FyberMediationAdapter.KEY_MUTE_VIDEO Boolean。将视频静音或取消静音

以下示例代码展示了如何设置这些广告请求参数:

Java

Bundle extras = new Bundle();
extras.putInt(InneractiveMediationDefs.KEY_AGE, 10);
extras.putBoolean(FyberMediationAdapter.KEY_MUTE_VIDEO, false);

AdRequest request = new AdRequest.Builder()
   .addNetworkExtrasBundle(FyberMediationAdapter.class, extras)
   .build();

Kotlin

var extras = Bundle()
extras.putInt(InneractiveMediationDefs.KEY_AGE, 10)
extras.putBoolean(FyberMediationAdapter.KEY_MUTE_VIDEO, false)

val request = AdRequest.Builder()
   .addNetworkExtrasBundle(FyberMediationAdapter::class.java, extras)
   .build()

错误代码

如果适配器无法接收来自 DT Exchange 的广告,您可以检查 使用 ResponseInfo.getAdapterResponses() 位于以下类下:

com.google.ads.mediation.fyber.FyberMediationAdapter

以下是 DT Exchange 适配器抛出的代码和随附的消息 当广告加载失败时:

错误代码 原因
101 界面中配置的数据传输 Exchange 服务器参数缺失/无效。 Ad Manager
103 请求的广告尺寸与 DT Exchange 支持的横幅广告尺寸不匹配。
105 DT Exchange SDK 加载了广告,但返回了意外的控制器。
106 广告尚未准备好展示。
200-399 DT Exchange SDK 返回了一个错误。请参阅代码 了解详情。
0-10 DT Exchange SDK 返回了一个错误。请参阅文档 了解详情。
101 界面中配置的数据传输 Exchange 服务器参数缺失/无效。 Ad Manager
102 请求的广告尺寸与 DT Exchange 支持的横幅广告尺寸不匹配。
103 未能展示广告,因为广告对象已使用。
104 由于广告未就绪,无法显示 DT Exchange 广告。
105 DT Exchange SDK 返回了初始化错误。

DT Exchange Android 中介适配器更新日志

下一个版本:

  • 将移动广告版本传递到 DT Exchange SDK。

版本 8.2.7.0

  • 已验证与 DT Exchange SDK 8.2.7 的兼容性。

构建和测试时所用平台:

  • Google 移动广告 SDK 版本 23.0.0。
  • DT Exchange SDK 8.2.7 版。

版本 8.2.6.1

  • 将所需的最低 Google 移动广告 SDK 版本更新为 23.0.0。
  • 已验证与 DT Exchange SDK 8.2.6 的兼容性。

构建和测试时所用平台:

  • Google 移动广告 SDK 版本 23.0.0。
  • DT Exchange SDK 8.2.6 版。

版本 8.2.6.0

  • 已验证与 DT Exchange SDK 8.2.6 的兼容性。

构建和测试时所用平台:

  • Google 移动广告 SDK 22.6.0 版。
  • DT Exchange SDK 8.2.6 版。

版本 8.2.5.0

  • 已验证与 DT Exchange SDK 8.2.5 的兼容性。

构建和测试时所用平台:

  • Google 移动广告 SDK 22.5.0 版。
  • DT Exchange SDK 8.2.5 版。

版本 8.2.4.0

  • 已验证与 DT Exchange SDK 8.2.4 的兼容性。

构建和测试时所用平台:

  • Google 移动广告 SDK 22.3.0 版。
  • DT Exchange SDK 8.2.4 版。

版本 8.2.3.0

  • 更新了适配器,以使用新的 VersionInfo 类。
  • 将所需的最低 Google 移动广告 SDK 版本更新为 22.0.0。

构建和测试时所用平台:

  • Google 移动广告 SDK 22.0.0 版。
  • DT Exchange SDK 8.2.3 版。

版本 8.2.2.1

  • 现已支持在中介额外参数中传递 muteVideo 键,使插页式广告不再显示。

构建和测试时所用平台:

  • Google 移动广告 SDK 21.5.0 版。
  • DT Exchange SDK 8.2.2 版。

8.2.2.0 版

  • 已验证与 DT Exchange SDK 8.2.2 的兼容性。
  • 将所需的最低 Google 移动广告 SDK 版本更新为 21.5.0。

构建和测试时所用平台:

  • Google 移动广告 SDK 21.5.0 版。
  • DT Exchange SDK 8.2.2 版。

8.2.1.0 版

  • 将适配器名称更名为“DT Exchange”。
  • 已验证与 DT Exchange SDK 8.2.1 的兼容性。
  • 将所需的最低 Google 移动广告 SDK 版本更新为 21.3.0。

构建和测试时所用平台:

  • Google 移动广告 SDK 21.3.0 版。
  • DT Exchange SDK 8.2.1 版。

8.2.0.0 版

  • 已验证与 Fyber SDK 8.2.0 的兼容性。
  • 将所需的最低 Google 移动广告 SDK 版本更新为 21.1.0。

构建和测试时所用平台:

  • Google 移动广告 SDK 21.1.0 版。
  • Fyber SDK 版本 8.2.0。

版本 8.1.5.0

  • 已验证与 Fyber SDK 8.1.5 的兼容性。

构建和测试时所用平台:

  • Google 移动广告 SDK 21.0.0 版。
  • Fyber SDK 版本 8.1.5。

版本 8.1.4.0

  • 已验证与 Fyber SDK 8.1.4 的兼容性。

构建和测试时所用平台:

  • Google 移动广告 SDK 21.0.0 版。
  • Fyber SDK 版本 8.1.4。

版本 8.1.3.1

  • compileSdkVersiontargetSdkVersion 更新到了 API 31。
  • 将所需的最低 Google 移动广告 SDK 版本更新为 21.0.0。
  • 将所需的最低 Android API 级别更新为 19。

构建和测试时所用平台:

  • Google 移动广告 SDK 21.0.0 版。
  • Fyber SDK 版本 8.1.3。

版本 8.1.3.0

  • 已验证与 Fyber SDK 8.1.3 的兼容性。
  • 将所需的最低 Google 移动广告 SDK 版本更新为 20.6.0。

构建和测试时所用平台:

  • Google 移动广告 SDK 20.6.0 版。
  • Fyber SDK 版本 8.1.3。

8.1.2.0 版

  • 已验证与 Fyber SDK 8.1.2 的兼容性。
  • 将所需的最低 Google 移动广告 SDK 版本更新为 20.5.0。

构建和测试时所用平台:

  • Google 移动广告 SDK 20.5.0 版。
  • Fyber SDK 8.1.2 版。

8.1.0.0 版

  • 已验证与 Fyber SDK 8.1.0 的兼容性。

构建和测试时所用平台:

  • Google 移动广告 SDK 20.4.0 版。
  • Fyber SDK 版本 8.1.0。

版本 7.8.4.1

  • 修复了以下问题:如果中介配置中有重复或多个唯一应用 ID,适配器将无法初始化。
  • 将所需的最低 Google 移动广告 SDK 版本更新为 20.4.0。

构建和测试时所用平台:

  • Google 移动广告 SDK 20.4.0 版。
  • Fyber SDK 7.8.4 版。

7.8.4.0 版

  • 已验证与 Fyber SDK 7.8.4 的兼容性。
  • 将所需的最低 Google 移动广告 SDK 版本更新为 20.3.0。
  • 修复了未调用 onVideoComplete() 的激励展示广告问题。
  • Fyber 现在需要“活动”上下文才能展示广告。

构建和测试时所用平台:

  • Google 移动广告 SDK 20.3.0 版。
  • Fyber SDK 7.8.4 版。

7.8.3.0 版

  • 已验证与 Fyber SDK 7.8.3 的兼容性。
  • 添加了标准化的适配器错误代码和消息。
  • 将所需的最低 Google 移动广告 SDK 版本更新为 20.1.0。

构建和测试时所用平台:

  • Google 移动广告 SDK 20.1.0 版。
  • Fyber SDK 7.8.3 版。

7.8.2.0 版

  • 已验证与 Fyber SDK 7.8.2 的兼容性。
  • 将所需的最低 Google 移动广告 SDK 版本更新为 20.0.0。

构建和测试时所用平台:

  • Google 移动广告 SDK 20.0.0 版。
  • Fyber SDK 7.8.2 版。

7.8.1.0 版

  • 已验证与 Fyber SDK 7.8.1 的兼容性。

构建和测试时所用平台:

  • Google 移动广告 SDK 19.7.0 版。
  • Fyber SDK 7.8.1 版。

7.8.0.0 版

  • 已验证与 Fyber SDK 7.8.0 的兼容性。
  • 将要求的最低 Google 移动广告 SDK 版本更新为 19.7.0。

构建和测试时所用平台:

  • Google 移动广告 SDK 19.7.0 版。
  • Fyber SDK 7.8.0 版。

7.7.4.0 版

  • 已验证与 Fyber SDK 7.7.4 的兼容性。
  • 修复了针对激励广告转发 onUserEarnedReward() 两次的问题。

构建和测试时所用平台:

  • Google 移动广告 SDK 19.5.0 版。
  • Fyber SDK 7.7.4 版。

7.7.3.0 版

  • 已验证与 Fyber SDK 7.7.3 的兼容性。

构建和测试时所用平台:

  • Google 移动广告 SDK 19.5.0 版。
  • Fyber SDK 7.7.3 版。

7.7.2.0 版

  • 已验证与 Fyber SDK 7.7.2 的兼容性。
  • 将要求的最低 Google 移动广告 SDK 版本更新为 19.5.0。

构建和测试时所用平台:

  • Google 移动广告 SDK 19.5.0 版。
  • Fyber SDK 7.7.2 版。

7.7.1.0 版

  • 已验证与 Fyber SDK 7.7.1 的兼容性。
  • 将所需的最低 Google 移动广告 SDK 版本更新为 19.4.0。

构建和测试时所用平台:

  • Google 移动广告 SDK 19.4.0 版。
  • Fyber SDK 7.7.1 版。

7.7.0.0 版

  • 已验证与 Fyber SDK 7.7.0 的兼容性。

构建和测试时所用平台:

  • Google 移动广告 SDK 19.3.0 版。
  • Fyber SDK 7.7.0 版。

7.6.1.0 版

  • 已验证与 Fyber SDK 7.6.1 的兼容性。

构建和测试时所用平台:

  • Google 移动广告 SDK 19.3.0 版。
  • Fyber SDK 7.6.1 版。

7.6.0.0 版

  • 已验证与 Fyber SDK 7.6.0 的兼容性。
  • 更新了适配器,以支持内嵌自适应横幅广告请求。
  • 将所需的最低 Google 移动广告 SDK 版本更新为 19.3.0。
  • 修复了未针对横幅广告调用 onAdOpened()/onAdClosed() 方法的 bug。

构建和测试时所用平台:

  • Google 移动广告 SDK 19.3.0 版。
  • Fyber SDK 7.6.0 版。

版本 7.5.4.0

  • 已验证与 Fyber SDK 7.5.4 的兼容性。
  • 将要求的最低 Google 移动广告 SDK 版本更新为 19.1.0。

构建和测试时所用平台:

  • Google 移动广告 SDK 19.1.0 版。
  • Fyber SDK 7.5.4 版。

版本 7.5.3.0

  • 已验证与 Fyber SDK 7.5.3 的兼容性。

构建和测试时所用平台:

  • Google 移动广告 SDK 19.0.1 版。
  • Fyber SDK 7.5.3 版。

7.5.2.0 版

  • 已验证与 Fyber SDK 7.5.2 的兼容性。
  • 将要求的最低 Google 移动广告 SDK 版本更新为 19.0.1。

构建和测试时所用平台:

  • Google 移动广告 SDK 19.0.1 版。
  • Fyber SDK 7.5.2 版。

7.5.0.0 版

  • 已验证与 Fyber SDK 7.5.0 的兼容性。
  • 修复了 Fyber 广告加载期间 NullPointerException 崩溃的问题。

构建和测试时所用平台:

  • Google 移动广告 SDK 18.3.0 版。
  • Fyber SDK 7.5.0 版。

7.4.1.0 版

  • 已验证与 Fyber SDK 7.4.1 的兼容性。
  • 将所需的最低 Google 移动广告 SDK 版本更新为 18.3.0。

构建和测试时所用平台:

  • Google 移动广告 SDK 18.3.0 版。
  • Fyber SDK 7.4.1 版。

7.3.4.0 版

  • 初始版本!
  • 支持横幅广告、插页式广告和激励广告。

构建和测试时所用平台:

  • Google 移动广告 SDK 18.2.0 版。
  • Fyber SDK 7.3.4 版。