将 DT Exchange 与中介集成

本指南介绍了如何使用 Google 移动广告 SDK 使用 AdMob 中介加载和展示来自 DT 广告交易平台的广告,涵盖广告瀑布流集成。其中介绍了如何将 DT Exchange 添加到广告单元的中介配置中,以及如何将 DT Exchange SDK 和适配器集成到 Android 应用中。

支持的集成和广告格式

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

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

要求

  • Android API 级别 21 或更高级别

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

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

注册登录 DT 广告交易平台。

点击添加应用按钮以添加应用。

管理应用

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

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

设置

应用 ID 和展示位置 ID

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

菜单

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

应用 ID

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

展示位置 ID

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

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

“用户个人资料”菜单

记下发布商 ID使用方密钥使用方 Secret,因为您在下一步中需要用到这些信息。

用户个人资料

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

为广告单元配置中介设置

您需要将 DT Exchange 添加到广告单元的中介配置。

首先,登录您的 AdMob 帐号。接下来,前往中介标签页。如果您想修改现有的中介组,请点击该中介组的名称进行修改,然后直接跳转到添加 DT Exchange 作为广告来源

要创建新的中介组,请选择创建中介组

输入您的广告格式和平台,然后点击继续

为中介组命名,然后选择要定位到的地理位置。接下来,将中介组的状态设置为已启用,然后点击添加广告单元

将此中介组与您的一个或多个现有AdMob 广告单元相关联。接着,点击完成

现在,您应该会看到广告单元卡片内填充了您选择的广告单元:

添加为广告来源 DT Exchange

广告来源部分的广告瀑布流卡片下,选择添加广告来源。然后选择 DT Exchange

选择 DT Exchange 并启用优化开关。输入在上一部分获得的 Publisher ID, Consumer Secret and Consumer Key,为DT Exchange设置广告来源优化。 然后,为DT Exchange 输入有效每千次展示费用值,并点击继续

如果您已有 DT Exchange的映射,则可以选择它。否则,请点击添加映射

接下来,输入在上一部分中获取的 Application ID and Placement ID。接着,点击完成

将 DT Exchange (Fyber Monetization) 添加到 GDPR 和美国州级法规广告合作伙伴名单

请按照 GDPR 设置美国州级法规设置中的步骤,将 DT Exchange (Fyber Monetization) 添加到 AdMob 界面中的 GDPR 和美国州级法规广告合作伙伴名单中。

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

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

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

手动集成

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

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

根据 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 实现指南

美国州级隐私保护法律

美国各州隐私保护法律 要求向用户提供选择不“出售”其“个人信息”(该法律对这些术语进行了定义)的权利,并要求“出售”方在首页醒目位置提供“不出售我的个人信息”链接,以供用户选择。根据美国州级隐私保护法律合规性指南,您可以为 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 步:测试您的实现

启用测试广告

请务必为 AdMob。

验证测试广告

如需验证您收到的是来自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 服务器参数缺失/无效。 AdMob
103 请求的广告尺寸与 DT Exchange 支持的横幅广告尺寸不匹配。
105 DT Exchange SDK 加载了广告,但返回了非预期的控制器。
106 广告尚未准备好展示。
200-399 DT Exchange SDK 返回了一个错误。如需了解详情,请参阅代码

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

版本 8.3.2.0

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

构建和测试所需版本:

  • Google 移动广告 SDK 23.4.0 版。
  • DT Exchange SDK 版本 8.3.2。

8.3.1.0 版

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

构建和测试所需系统:

  • Google 移动广告 SDK 版本 23.3.0。
  • DT Exchange SDK 版本 8.3.1。

8.3.0.0 版

  • 添加了对将 Google 移动广告 SDK 版本传递给 DT Exchange SDK 的支持。
  • 已验证与 DT Exchange SDK 8.3.0 的兼容性。

构建和测试所需版本:

  • Google 移动广告 SDK 23.2.0 版。
  • DT Exchange SDK 版本 8.3.0。

版本 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

  • 添加了对在中介 extra 中传递 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 或多个唯一应用 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 现在需要 activity 上下文才能展示广告。

构建和测试所需系统:

  • 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 版。