Integrate DT Exchange with mediation

本指南将向您介绍如何使用 Google 移动广告 SDK 通过 AdMob 中介、(涵盖广告瀑布流集成)加载和展示来自 DT Exchange 的广告。其中介绍了如何将 DT Exchange 添加到广告单元的中介配置中,以及如何将 DT Exchange SDK 和适配器集成到 iOS 应用中。

支持的集成和广告格式

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

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

要求

  • iOS 部署目标为 12.0 或更高版本
  • 最新版 Google 移动广告 SDK

  • 看完中介服务入门指南

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

Add new app and ad placement

Sign up or log in to DT Exchange Console.

Click on the Add App button to add your app.

Manage Apps

Select your Platform, fill out the rest of the form, and click Add Placements.

Enter a name for the new placement in the field labeled Name your Placement and select your desired Placement Type from the dropdown list. Finally, click Save Placement.

Setup

App ID and Placement ID

Open the left navigation bar by hovering your mouse over it. Then click Apps from the left menu.

Menu

On the App Management page, take note of the App ID next to your app.

App ID

Select your app, navigate to the Placements tab, and click on the copy icon next to Placement Name. Take note of the Placement ID.

Placement ID

Publisher ID, Consumer Key and Consumer Secret

Click on your username from the left menu and select User Profile.

User Profile Menu

Take note of the Publisher ID, Consumer Key, and Consumer Secret as these are needed in the next step.

User Profile

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

Configure mediation settings for your ad unit

You need to add DT Exchange to the mediation configuration for your ad unit.

First, sign in to your AdMob account. Next, navigate to the Mediation tab. If you have an existing mediation group you'd like to modify, click the name of that mediation group to edit it, and skip ahead to Add DT Exchange as an ad source.

To create a new mediation group, select Create Mediation Group.

Enter your ad format and platform, then click Continue.

Give your mediation group a name, and select locations to target. Next, set the mediation group status to Enabled, and then click Add Ad Units.

Associate this mediation group with one or more of your existing AdMob ad units. Then click Done.

You should now see the ad units card populated with the ad units you selected:

Add DT Exchange as an ad source

Under the Waterfall card in the Ad Sources section, select Add Ad Source. Then select DT Exchange.

Select DT Exchange and enable the Optimize switch. Enter the Publisher ID, Consumer Secret and Consumer Key obtained in the previous section to set up ad source optimization for DT Exchange. Then enter an eCPM value for DT Exchange and click Continue.

If you already have a mapping for DT Exchange, you can select it. Otherwise, click Add mapping.

Next, enter the Application ID and Placement ID obtained in the previous section. Then click Done.

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

Follow the steps in GDPR settings and US state regulations settings to add Fyber to the GDPR and US state regulations ad partners list in the AdMob UI.

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

将以下代码行添加到项目的 Podfile 中:

pod 'GoogleMobileAdsMediationFyber'

在命令行中运行以下命令:

pod install --repo-update

手动集成

  • 下载最新版本的 DT Exchange SDK for iOS,并将以下框架关联到您的项目:
    • IASDKCore.framework
    • IASDKMRAID.framework
    • IASDKVideo.framework
  • 通过更新日志中的下载链接下载最新版本的 DT Exchange 适配器,并在项目中关联 FyberAdapter.framework
  • 将以下框架添加到您的项目中:
    • libxml2.2.tbd

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

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

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

Swift

import IASDKCore
// ...

IASDKCore.sharedInstance().gdprConsent = IAGDPRConsentType.given
IASDKCore.sharedInstance().gdprConsentString = "myGdprConsentString"

Objective-C

#import <IASDKCore/IASDKCore.h>
// ...

[IASDKCore.sharedInstance setGDPRConsent:YES];
[IASDKCore.sharedInstance setGDPRConsentString:@"myGdprConsentString"];

如需了解详情以及可以在该方法中提供的值,请访问 DT Exchange 的 GDPR 资源页面及其 GDPR 实现指南

美国州级隐私保护法律

美国州级隐私保护法律 规定,用户有权选择不“出售”其“个人信息”(该法律对这些术语进行了定义),“出售”方首页上醒目的“请勿出售我的个人信息”链接提供该拒绝选项。根据美国州级隐私保护法律合规性指南,您可以为 Google 广告投放启用受限的数据处理,但 Google 无法将此设置应用于中介链中的每个广告联盟。因此,您必须找出中介链中可能参与出售个人信息的每个广告联盟,并按照每个广告联盟的指导来确保遵守该政策。

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

Swift

import IASDKCore
// ...

IASDKCore.sharedInstance().ccpaString = "myCCPAConsentString"

Objective-C

#import <IASDKCore/IASDKCore.h>
// ...

[IASDKCore.sharedInstance setCCPAString:@"myCCPAConsentString"];

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

第 5 步:添加所需的代码

SKAdNetwork 集成

按照 DT Exchange 的文档中的说明,将 SKAdNetwork 标识符添加到项目的 Info.plist 文件中。

第 6 步:测试实现效果

Enable test ads

Make sure you register your test device for AdMob.

Verify test ads

To verify that you are receiving test ads from DT Exchange, enable single ad source testing in ad inspector using the DT Exchange (Waterfall) ad source(s).

可选步骤

广告联盟专有参数

DT Exchange 适配器支持可使用 GADMAdapterFyberExtras() 传递给适配器的其他请求参数。适配器会在软件包中查找以下键:

请求参数和值
setUserData
用户的年龄、性别和邮政编码。
IAUserData
setMuteAudio Boolean。将视频静音或取消静音

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

Swift

let userData = IAUserData.build({ builder in
  builder.age = 23
  builder.gender = IAUserGenderType.male
  builder.zipCode = "1234"
}];

let request = GADRequest()
let extras = GADMAdapterFyberExtras()
extras.userData = userData
extras.muteAudio = true
request.register(extras)

Objective-C

IAUserData *userData = [IAUserData build:^(id<IAUserDataBuilder> _Nonnull builder) {
    builder.age = 23;
    builder.gender = IAUserGenderTypeMale;
    builder.zipCode = @"1234";
}];

GADRequest *request = [GADRequest request];
GADMAdapterFyberExtras *extras = [[GADMAdapterFyberExtras alloc] init];
extras.userData = userData;
extras.muteAudio = YES;
[request registerAdNetworkExtras:extras];

如需了解详情,请参阅 DT Exchange 集成指南

错误代码

如果适配器未能从 DT Exchange 收到广告,您可以使用以下类下的 GADResponseInfo.adNetworkInfoArray(位于以下类下):

GADMediationAdapterFyber

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

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

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

版本 8.3.1.0

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

构建和测试时所用平台:

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

版本 8.3.0.0

  • 已验证与 DT Exchange SDK 8.3.0 版本的兼容性。

构建和测试时所用平台:

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

版本 8.2.8.0

  • 已验证与 DT Exchange SDK 版本 8.2.8 的兼容性。

构建和测试时所用平台:

  • Google 移动广告 SDK 11.3.0 版。
  • DT Exchange SDK 8.2.8 版。

版本 8.2.7.0

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

构建和测试时所用平台:

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

版本 8.2.6.1

  • 在激励广告中添加了 didFailToPresentWithError 回调。
  • 在插页式广告和激励广告中添加了 IAAdDidExpire 委托方法。
  • 现在要求最低 iOS 版本为 12.0。
  • 现在需要 Google 移动广告 SDK 11.0 或更高版本。
  • DTExchangeAdapter.xcframework 的框架中添加了 Info.plist

构建和测试时所用平台:

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

版本 8.2.6.0

  • 已验证与 DT Exchange SDK 版本 8.2.6 的兼容性。
  • 从横幅广告和插页式广告实现中移除了已废弃的 willBackgroundApplication 委托方法。

构建和测试时所用平台:

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

版本 8.2.5.0

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

构建和测试时所用平台:

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

版本 8.2.4.0

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

构建和测试时所用平台:

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

版本 8.2.3.0

  • 已验证与 DT Exchange SDK 版本 8.2.3 的兼容性。

构建和测试时所用平台:

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

版本 8.2.2.0

  • 已验证与 DT Exchange SDK 版本 8.2.2 的兼容性。

构建和测试时所用平台:

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

版本 8.2.1.0

  • 已验证与 DT Exchange SDK 版本 8.2.1 的兼容性。
  • 移除了对 armv7 架构的支持。
  • 现在要求最低 iOS 版本为 11.0。
  • 现在需要 Google 移动广告 SDK 10.4.0 或更高版本。

构建和测试时所用平台:

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

版本 8.2.0.0

  • 已验证与 DT Exchange SDK 8.2.0 版本的兼容性。

构建和测试时所用平台:

  • Google 移动广告 SDK 10.2.0 版。
  • DT Exchange SDK 8.2.0 版。

版本 8.1.9.1

  • 现在需要 Google 移动广告 SDK 10.0.0 或更高版本。

构建和测试时所用平台:

  • Google 移动广告 SDK 10.0.0 版。
  • DT Exchange SDK 8.1.9 版。

版本 8.1.9.0

  • 移除了已废弃的性别、生日和地理位置中介 API 的使用。
  • 已验证与 DT Exchange SDK 版本 8.1.9 的兼容性。

构建和测试时所用平台:

  • Google 移动广告 SDK 9.14.0 版。
  • DT Exchange SDK 8.1.9 版。

版本 8.1.7.0

  • 已验证与 DT Exchange SDK 版本 8.1.7 的兼容性。
  • Adapter 已更名为“DT Exchange”。

构建和测试时所用平台:

  • Google 移动广告 SDK 9.13.0 版。
  • DT Exchange SDK 8.1.7 版。

版本 8.1.6.0

  • 添加了对在 GADMAdapterFyberExtras 类中传递 muteAudio extra 的支持。
  • 更新了适配器以使用 didRewardUser API。
  • 现在需要 Google 移动广告 SDK 9.8.0 或更高版本。
  • 已验证与 Fyber Marketplace SDK 8.1.6 版兼容。

构建和测试时所用平台:

  • Google 移动广告 SDK 9.11.0 版。
  • Fyber Marketplace SDK 8.1.6 版。

版本 8.1.5.0

  • 已验证与 Fyber Marketplace SDK 8.1.5 版兼容。

构建和测试时所用平台:

  • Google 移动广告 SDK 9.5.0 版。
  • Fyber Marketplace SDK 8.1.5 版。

版本 8.1.4.0

  • 已验证与 Fyber Marketplace SDK 8.1.4 版兼容。
  • 添加了对 arm64 模拟器架构的支持。

构建和测试时所用平台:

  • Google 移动广告 SDK 9.1.0 版。
  • Fyber Marketplace SDK 8.1.4 版。

版本 8.1.3.1

  • 已验证与 Google 移动广告 SDK 9.0.0 版兼容。
  • 现在需要 Google 移动广告 SDK 9.0.0 或更高版本。

构建和测试时所用平台:

  • Google 移动广告 SDK 9.0.0 版。
  • Fyber Marketplace SDK 8.1.3 版。

版本 8.1.3.0

  • 已验证与 Fyber Marketplace SDK 8.1.3 版兼容。

构建和测试时所用平台:

  • Google 移动广告 SDK 8.13.0 版。
  • Fyber Marketplace SDK 8.1.3 版。

版本 8.1.2.0

  • 已验证与 Fyber Marketplace SDK 8.1.2 版兼容。

构建和测试时所用平台:

  • Google 移动广告 SDK 8.13.0 版。
  • Fyber Marketplace SDK 8.1.2 版。

版本 8.1.1.0

  • 已验证与 Fyber Marketplace SDK 8.1.1 版兼容。

构建和测试时所用平台:

  • Google 移动广告 SDK 8.12.0 版。
  • Fyber Marketplace SDK 8.1.1 版。

版本 8.1.0.0

  • 已验证与 Fyber Marketplace SDK 8.1.0 版兼容。

构建和测试时所用平台:

  • Google 移动广告 SDK 8.12.0 版。
  • Fyber Marketplace SDK 8.1.0 版。

版本 8.0.0.0

  • 已验证与 Fyber Marketplace SDK 8.0.0 版兼容。

构建和测试时所用平台:

  • Google 移动广告 SDK 8.12.0 版。
  • Fyber Marketplace SDK 8.0.0 版。

版本 7.9.0.0

  • 已验证与 Fyber Marketplace SDK 7.9.0 版兼容。

构建和测试时所用平台:

  • Google 移动广告 SDK 8.11.0 版。
  • Fyber Marketplace SDK 7.9.0 版。

版本 7.8.9.0

  • 已验证与 Fyber Marketplace SDK 7.8.9 版兼容。

构建和测试时所用平台:

  • Google 移动广告 SDK 8.10.0 版。
  • Fyber Marketplace SDK 7.8.9 版。

版本 7.8.8.1

  • 将广告事件“didEndVideo”移到了激励广告回调 IAAdDidReward

构建和测试时所用平台:

  • Google 移动广告 SDK 8.9.0 版。
  • Fyber Marketplace SDK 7.8.8 版。

版本 7.8.8.0

  • 现在要求最低 iOS 版本为 10.0。
  • 已验证与 Fyber Marketplace SDK 7.8.8 版兼容。

构建和测试时所用平台:

  • Google 移动广告 SDK 8.9.0 版。
  • Fyber Marketplace SDK 7.8.8 版。

版本 7.8.7.0

  • 已验证与 Fyber Marketplace SDK 7.8.7 版兼容。

构建和测试时所用平台:

  • Google 移动广告 SDK 8.8.0 版。
  • Fyber Marketplace SDK 7.8.7 版。

版本 7.8.6.0

  • 已验证与 Fyber Marketplace SDK 7.8.6 版兼容。

构建和测试时所用平台:

  • Google 移动广告 SDK 8.5.0 版。
  • Fyber Marketplace SDK 7.8.6 版。

版本 7.8.5.0

  • 已验证与 Fyber Marketplace SDK 7.8.5 版兼容。
  • 现在需要针对 Xcode 12.5 或更高版本进行构建。

构建和测试时所用平台:

  • Google 移动广告 SDK 8.5.0 版。
  • Fyber Marketplace SDK 7.8.5 版。

版本 7.8.1.0

  • 已验证与 Fyber Marketplace SDK 7.8.1 版兼容。
  • 放宽了对 Google 移动广告 SDK 8.0.0 或更高版本的依赖。
  • 添加了标准化的适配器错误代码和消息。
  • 将适配器更新为使用 .xcframework 格式。

构建和测试时所用平台:

  • Google 移动广告 SDK 8.0.0 版。
  • Fyber Marketplace SDK 7.8.1 版。

版本 7.8.0.0

  • 已验证与 Fyber Marketplace SDK 7.8.0 版兼容。

构建和测试时所用平台:

  • Google 移动广告 SDK 7.69.0 版。
  • Fyber Marketplace SDK 7.8.0 版。

版本 7.7.3.0

  • 已验证与 Fyber Marketplace SDK 7.7.3 版兼容。
  • 现在需要 Google 移动广告 SDK 7.69.0 或更高版本。

构建和测试时所用平台:

  • Google 移动广告 SDK 7.69.0 版。
  • Fyber Marketplace SDK 7.7.3 版。

版本 7.7.2.0

  • 已验证与 Fyber Marketplace SDK 7.7.2 版兼容。
  • 现在需要 Google 移动广告 SDK 7.67.0 或更高版本。

构建和测试时所用平台:

  • Google 移动广告 SDK 7.67.0 版。
  • Fyber Marketplace SDK 7.7.2 版。

版本 7.7.1.0

  • 已验证与 Fyber Marketplace SDK 7.7.1 版兼容。
  • 现在需要 Google 移动广告 SDK 7.66.0 或更高版本。

构建和测试时所用平台:

  • Google 移动广告 SDK 7.66.0 版。
  • Fyber Marketplace SDK 7.7.1 版。

版本 7.6.4.0

  • 已验证与 Fyber Marketplace SDK 7.6.4 版兼容。
  • 现在需要 Google 移动广告 SDK 7.65.0 或更高版本。
  • 添加了 GADMAdapterFyberExtras 类,使发布商能够将关键字和 userData 传递到 Fyber Marketplace SDK。

构建和测试时所用平台:

  • Google 移动广告 SDK 7.65.0 版。
  • Fyber Marketplace SDK 7.6.4 版。

版本 7.6.3.0

  • 已验证与 Fyber Marketplace SDK 7.6.3 版兼容。

构建和测试时所用平台:

  • Google 移动广告 SDK 7.64.0 版。
  • Fyber Marketplace SDK 7.6.3 版。

版本 7.6.2.0

  • 已验证与 Fyber Marketplace SDK 7.6.2 版兼容。
  • 现在需要 Google 移动广告 SDK 7.64.0 或更高版本。

构建和测试时所用平台:

  • Google 移动广告 SDK 7.64.0 版。
  • Fyber Marketplace SDK 7.6.2 版。

版本 7.6.0.0

  • 已验证与 Fyber Marketplace SDK 7.6.0 版兼容。
  • 现在需要 Google 移动广告 SDK 7.62.0 或更高版本。
  • 更新了适配器,以支持内嵌自适应横幅广告请求。
  • 添加了对激励 HTML 的支持。
  • 添加了新的奖励回调:IAAdDidReward(适用于激励视频广告和激励 HTML 广告)。IAVideoCompleted 不再用于奖励。

构建和测试时所用平台:

  • Google 移动广告 SDK 7.62.0 版。
  • Fyber Marketplace SDK 7.6.0 版。

版本 7.5.6.1

  • 暂时移除了 Fyber Marketplace SDK 专用日志记录。

构建和测试时所用平台:

  • Google 移动广告 SDK 7.60.0 版。
  • Fyber Marketplace SDK 7.5.6 版。

版本 7.5.6.0

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

构建和测试时所用平台:

  • Google 移动广告 SDK 7.60.0 版。
  • Fyber Marketplace SDK 7.5.6 版。

版本 7.5.5.0

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

构建和测试时所用平台:

  • Google 移动广告 SDK 7.59.0 版。
  • Fyber Marketplace SDK 7.5.5 版。

版本 7.5.4.0

  • 已验证与 Fyber Marketplace SDK 7.5.4 版兼容。
  • 取消了对 i386 架构的支持。

构建和测试时所用平台:

  • Google 移动广告 SDK 7.57.0 版。
  • Fyber Marketplace SDK 7.5.4 版。

版本 7.5.3.0

  • 已验证与 Fyber Marketplace SDK 7.5.3 版兼容。

构建和测试时所用平台:

  • Google 移动广告 SDK 7.55.0 版。
  • Fyber Marketplace SDK 7.5.3 版。

7.5.1.0 版

  • 已验证与 Fyber Marketplace SDK 7.5.1 版兼容。
  • 修复了初始化 Fyber SDK 时发生崩溃的问题。

构建和测试时所用平台:

  • Google 移动广告 SDK 7.55.0 版。
  • Fyber Marketplace SDK 7.5.1 版。

版本 7.5.0.0(已弃用)

  • 此版本已被移除。请使用 7.5.1.0 或更高版本。
  • 已验证与 Fyber Marketplace SDK 7.5.0 版兼容。
  • 现在,如果 Fyber SDK 尚未初始化,则适配器会在发出广告请求之前初始化 Fyber SDK。

构建和测试时所用平台:

  • Google 移动广告 SDK 7.53.0 版。
  • Fyber Marketplace SDK 7.5.0 版。

7.4.0.0 版

  • 初始版本!
  • 新增了对横幅广告、插页式广告和激励广告格式的支持。

构建和测试时所用平台:

  • Google 移动广告 SDK 7.52.0 版。
  • Fyber Marketplace SDK 7.4.0 版。