本指南介绍了如何使用 GMA Next-Gen SDK 通过 AdMob 中介加载和展示来自 myTarget 的广告,其中涵盖了瀑布流集成。如何将 myTarget 添加到广告单元的中介配置,以及如何将 myTarget SDK 和适配器集成到 Android 应用中。
支持的集成和广告格式
myTarget 的中介适配器具有以下功能:
| 集成 | |
|---|---|
| 出价 | |
| 瀑布流 | |
| 表现形式 | |
| 横幅 | |
| 插页式广告 | |
| 激励广告 | |
| 原生 | |
要求
- Android API 级别 24 或更高级别
“GMA Next-Gen SDK”的最新视频。
完成中介入门指南。
第 1 步:在 myTarget 界面中设置配置
登录您的 myTarget 账号。点击标题中的应用,前往“应用”页面。点击添加应用,添加您的应用。

接下来,提供应用的 Google Play 网址。

添加应用时,myTarget 要求您先创建广告单元,然后才能完成该流程。
横幅
从可用的广告格式中选择横幅,然后点击添加广告单元按钮。

插页式广告
从可用的广告格式中选择插页式广告,然后点击添加广告单元按钮。

激励广告
从可用的广告格式中选择激励视频广告,然后点击添加广告单元按钮。

原生
从可用的广告格式中选择原生,然后点击添加广告单元。

在广告单元的详情页面中,记下您的广告位 ID,该 ID 可在广告单元设置下找到,显示为 slot_id。此 slot ID 将用于在下一部分中设置 AdMob 广告单元。

除了 slot_id 之外,您还需要 myTarget Permanent Access Token 才能设置 AdMob 广告单元 ID。前往个人资料标签页,然后选择访问令牌。点击 Create Token(创建令牌)或 Show Token(显示令牌),即可查看您的 myTarget 永久访问令牌。

更新 app-ads.txt
应用授权卖方 (app-ads.txt) 是一项 IAB Tech Lab 计划,有助于确保只通过您认定的授权渠道销售您的应用广告资源。为避免损失大量广告收入,您需要实施 app-ads.txt 文件。
如果您尚未完成此项设置,请为您的应用设置 app-ads.txt 文件。
如需为 myTarget 实现 app-ads.txt,请参阅如何创建和发布文件。
启用测试模式
按照 myTarget 的文档中的说明,在 myTarget 界面中添加和配置测试设备。
第 2 步:在 AdMob 界面中设置 myTarget 需求
为广告单元配置中介设置
您需要将 myTarget 添加到广告单元的中介配置。
首先,登录您的 AdMob 账号。接下来,前往中介标签页。如果您要修改某个现有中介组,请点击该中介组的名称进行修改,然后跳至将 myTarget 添加为广告来源。
若要创建新中介组,请选择创建中介组。

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

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

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

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

将 myTarget 添加为广告来源
在广告来源部分的瀑布流卡片下,选择添加广告来源。
选择 myTarget,然后启用优化开关。输入在上一部分中获得的永久访问令牌,以便为 myTarget 设置广告来源优化。 然后,为 myTarget 输入 eCPM 值,并点击继续。

如果您已为 myTarget 创建映射,可以选择该映射。 否则,请点击添加映射。

接下来,输入在上一部分获得的广告资源 ID。然后,点击完成。

将 Mail.ru 添加到 GDPR 和美国州级法规广告合作伙伴名单中
请按照欧洲法规设置和美国州级法规设置中的步骤,将 Mail.ru 添加到 AdMob 界面内的欧洲法规和美国州级法规广告合作伙伴名单中。
第 3 步:导入 myTarget SDK 和适配器
Android Studio 集成(推荐)
在应用级 Gradle 文件中,添加以下实现依赖项和配置:
Kotlin
dependencies { implementation("com.google.android.libraries.ads.mobile.sdk:ads-mobile-sdk:0.24.0-beta02") implementation("com.google.ads.mediation:mytarget:5.27.4.1") } configurations.configureEach { exclude(group = "com.google.android.gms", module = "play-services-ads") exclude(group = "com.google.android.gms", module = "play-services-ads-lite") }
Groovy
dependencies { implementation 'com.google.android.libraries.ads.mobile.sdk:ads-mobile-sdk:0.24.0-beta02' implementation 'com.google.ads.mediation:mytarget:5.27.4.1' } configurations.configureEach { exclude group: 'com.google.android.gms', module: 'play-services-ads' exclude group: 'com.google.android.gms', module: 'play-services-ads-lite' }
手动集成
如需添加 myTarget SDK,请参阅 myTarget Android SDK 文档。
前往 Google 的 Maven 制品库,找到 myTarget 适配器制品。选择最新版本,下载 myTarget 适配器的 .aar 文件,然后将其添加到您的项目中。
第 4 步:在 myTarget SDK 上实现隐私设置
欧盟地区用户意见征求和 GDPR
为了遵守 Google 的《欧盟地区用户意见征求政策》,您必须向欧洲经济区 (EEA)、英国和瑞士的用户披露某些信息,并征得他们同意才能使用 Cookie 或其他本地存储(如果法律有此要求),以及收集、分享和使用个人数据以实现广告个性化。此政策反映了欧盟《电子隐私指令》和《一般数据保护条例》(GDPR) 的要求。您要负责验证用户意见是否已传播到中介链中的每个广告来源。Google 无法自动将用户意见传递给此类广告资源网。
在 SDK 版本 5.1.0 中,myTarget 添加了用户意见征求 API,以支持隐私权要求。以下示例代码展示了如何将此意见信息传递给 myTarget SDK。如果您选择调用此方法,建议您在通过 GMA Next-Gen SDK 请求广告之前进行调用。
Java
import com.my.target.common.MyTargetPrivacy;
// ...
MyTargetPrivacy.setUserConsent(true);
Kotlin
import com.my.target.common.MyTargetPrivacy
// ...
MyTargetPrivacy.setUserConsent(true)
此外,如果已知用户属于年龄限制类别,您可以使用以下代码将此同意情况信息传递给 myTarget SDK。
Java
import com.my.target.common.MyTargetPrivacy;
// ...
MyTargetPrivacy.setUserAgeRestricted(true);
Kotlin
import com.my.target.common.MyTargetPrivacy
// ...
MyTargetPrivacy.setUserAgeRestricted(true)
如需了解详情以及可在该方法中提供的值,请参阅 myTarget 的隐私权和 GDPR 指南。
美国州级隐私保护法律
美国各州隐私保护法律要求向用户提供选择拒绝“出售”其“个人信息”(该法律中对这些术语做出了定义)的权利,“出售”方须在首页醒目位置提供“Do Not Sell My Personal Information”(不出售我的个人信息)链接,以供这些用户选择。美国州级隐私保护法律合规性指南可让您为 Google 广告投放启用受限的数据处理,但 Google 无法将此设置应用于您的中介链中的每个广告联盟。因此,您必须确定中介链中可能参与个人信息出售的每个广告联盟,并遵循这些广告联盟的指南来确保合规性。
在 SDK 版本 5.9.0 中,myTarget 添加了用户同意 API,以支持隐私权要求。以下示例代码展示了如何将此意见信息传递给 myTarget SDK。如果您选择调用此方法,建议您在通过 GMA Next-Gen SDK 请求广告之前进行调用。
Java
import com.my.target.common.MyTargetPrivacy;
// ...
MyTargetPrivacy.setCcpaUserConsent(true);
Kotlin
import com.my.target.common.MyTargetPrivacy
// ...
MyTargetPrivacy.setCcpaUserConsent(true)
如需详细了解此方法中可提供的值,请与 myTarget 支持团队联系。
第 5 步:添加必需的代码
myTarget 集成不需要其他代码。
第 6 步:测试您的实现
启用测试广告
请务必为 AdMob 注册测试设备,并在 myTarget 界面中启用测试模式。
验证测试广告
若要验证您是否能收到来自 myTarget 的测试广告,请在广告检查器中启用 single ad source testing(单个广告来源测试),并选择 myTarget (Waterfall)(myTarget [瀑布流])作为广告来源。
可选步骤
使用原生广告
广告呈现
myTarget 适配器以 NativeAd 对象的形式返回其原生广告。它会为 NativeAd 填充以下原生广告字段说明。
| 字段 | 由 myTarget 适配器填充 |
|---|---|
| 标题 | 始终 |
| 图片 | 始终 |
| 正文 | 始终 |
| 应用图标 | 始终 |
| 号召性用语 | 始终 |
| 星级 | 不保证 |
| 商店 | 不保证 |
| 价格 | 不保证 |
| 徽标 | 不保证 |
| 广告客户 | 始终 |
myTarget SDK 始终针对 mediaView 宽度和高度返回 0,因此 myTarget 适配器始终针对 getAspectRatio() 返回 0。
myTarget SDK 将在未来的版本中修复此问题。
展示和点击跟踪
GMA Next-Gen SDK 使用 myTarget SDK 的回调函数来跟踪展示和点击,因此这两个来源的报告应该基本一致。
错误代码
如果适配器未能收到来自 myTarget 的广告,您可以使用 ResponseInfo.getAdSourceResponses() 来检查广告响应中归属于以下类的底层错误:
com.google.ads.mediation.mytarget.MyTargetAdapter
com.google.ads.mediation.mytarget.MyTargetNativeAdapter
com.google.ads.mediation.mytarget.MyTargetRewardedAdapter
以下是当广告加载失败时,myTarget 适配器会抛出的代码和随附的消息:
| 错误代码 | 原因 |
|---|---|
| 100 | myTarget SDK 返回了错误。 |
| 101 | 在 AdMob 界面中配置的 myTarget 服务器参数缺失/无效。 |
| 102 | 所请求的广告尺寸与 myTarget 支持的横幅尺寸不一致。 |
| 103 | 广告请求不是统一原生广告请求。 |
| 104 | 从 myTarget 加载的原生广告与请求的原生广告不同。 |
| 105 | 从 myTarget 加载的原生广告缺少一些必需的素材资源(例如图片或图标)。 |