本指南介绍了如何使用 GMA Next-Gen SDK 通过 AdMob 中介加载和展示来自 BidMachine 的广告,其中涵盖了出价集成。如何将 BidMachine 添加到广告单元的中介配置,以及如何将 BidMachine SDK 和适配器集成到 Android 应用中。
支持的集成和广告格式
BidMachine 的中介适配器具有以下功能:
| 集成 | |
|---|---|
| 出价 | |
| 瀑布 | 1 |
| 表现形式 | |
| 应用启动 | |
| 横幅 | |
| 插页式广告 | |
| 激励广告 | |
| 插页式激励广告 | |
| 原生 | |
1 Waterfall 集成目前处于非公开 Beta 版阶段,请与您的客户经理联系,申请访问权限。
要求
- Android API 级别 24 或更高级别
- [对于出价]:如需在出价中集成所有受支持的广告格式,请使用 BidMachine 适配器
3.4.0.1或更高版本(建议使用最新版本)。
“GMA Next-Gen SDK”的最新视频
完成中介入门指南阅读。
第 1 步:在 BidMachine 界面中设置配置
登录您的 BidMachine 账号信息中心。
创建新的展示位置
前往来源标签页,然后在来源表格下选择修改按钮。
系统会显示您拥有的所有展示位置的列表。如需创建新的展示位置,请点击对话框中的添加展示位置按钮。
填写表单并点击保存。
最后,记下展示位置 ID。
更新 app-ads.txt
应用授权卖方 (app-ads.txt) 是一项 IAB Tech Lab 计划,有助于确保只通过您认定的授权渠道销售您的应用广告资源。为避免损失大量广告收入,您需要实施 app-ads.txt 文件。
如果您尚未完成此项设置,请为您的应用设置 app-ads.txt 文件。
如需为 BidMachine 实现 app-ads.txt,请从信息中心前往 app-ads.txt 标签页。然后,复制该列表并将其附加到网站的 app-ads.txt 文件中。
第 2 步:在 AdMob 界面中设置 BidMachine 需求
为广告单元配置中介设置
您需要将 BidMachine 添加到广告单元的中介配置。
首先,登录您的 AdMob 账号。接下来,前往中介标签页。如果您要修改某个现有中介组,请点击该中介组的名称进行修改,然后跳至将 BidMachine 添加为广告来源。
若要创建新中介组,请选择创建中介组。

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

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

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

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

将 BidMachine 添加为广告来源
出价
在出价卡片的广告来源部分,选择添加广告来源。然后选择 BidMachine。
点击如何签署合作伙伴协议,然后与 BidMachine 建立出价合作伙伴关系。
点击确认并同意,然后点击继续。
如果您已为 BidMachine 创建映射,可以选择该映射。否则,请点击添加映射。
接下来,输入在上一部分获得的来源 ID 和展示位置 ID。然后点击完成。

瀑布
在广告来源部分的瀑布流卡片下,选择添加广告来源。
选择 BidMachine。 然后,为 BidMachine 输入 eCPM 值,并点击继续。

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

接下来,输入在上一部分获得的展示位置 ID。然后,点击完成。

将 BidMachine 添加到 GDPR 和美国州级法规广告合作伙伴名单中
请按照欧洲法规设置和美国州级法规设置中的步骤,将 BidMachine 添加到 AdMob 界面内的欧洲法规和美国州级法规广告合作伙伴名单中。
第 3 步:导入 BidMachine SDK 和适配器
Android Studio 集成(推荐)
在应用级 Gradle 文件中,添加以下实现依赖项和配置:
Kotlin
dependencies { implementation("com.google.android.libraries.ads.mobile.sdk:ads-mobile-sdk:1.1.1") implementation("com.google.ads.mediation:bidmachine:3.7.0.0") } 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:1.1.1' implementation 'com.google.ads.mediation:bidmachine:3.7.0.0' } configurations.configureEach { exclude group: 'com.google.android.gms', module: 'play-services-ads' exclude group: 'com.google.android.gms', module: 'play-services-ads-lite' }
第 4 步:在 BidMachine SDK 上实现隐私设置
为了遵守 Google 的《欧盟地区用户意见征求政策》,您必须向欧洲经济区 (EEA)、英国和瑞士的用户披露某些信息,并征得他们同意,才能在法律要求的情况下使用 Cookie 或其他本地存储空间,以及收集、分享和使用个人数据以实现广告个性化。此政策反映了欧盟《电子隐私指令》和《一般数据保护条例》(GDPR) 的要求。您要负责验证用户意见是否已传播到中介链中的每个广告来源。Google 无法自动将用户意见传递给此类广告资源网。
BidMachine 会自动读取由意见征求管理平台(包括 UMP SDK)设置的 GDPR 意见征求。如需了解详情,请参阅 GDPR。
美国州级隐私保护法律
美国各州隐私保护法律要求向用户提供选择拒绝“出售”其“个人信息”(该法律中对这些术语做出了定义)的权利,“出售”方须在首页醒目位置提供“Do Not Sell My Personal Information”(不出售我的个人信息)链接,以供这些用户选择。美国州级隐私保护法律合规性指南可让您为 Google 广告投放启用受限的数据处理,但 Google 无法将此设置应用于您的中介链中的每个广告联盟。因此,您必须确定中介链中可能参与个人信息出售的每个广告联盟,并遵循这些广告联盟的指南来确保合规性。
BidMachine 会自动读取由意见征求管理平台(包括 UMP SDK)设置的 GPP 意见征求。如需了解详情,请参阅 GPP。
第 5 步:添加必需的代码
无需为 BidMachine 集成添加额外代码。
第 6 步:测试您的实现
启用测试广告
确保针对 AdMob 注册测试设备。
按照 BidMachine 文档中有关 Android 的说明操作,以启用 BidMachine 的测试模式。
验证测试广告
若要验证您是否能收到来自 BidMachine 的测试广告,请在广告检查器中启用单个广告来源测试,并选择 BidMachine (Bidding)(BidMachine [出价])作为广告来源。
可选步骤
原生广告
广告呈现
BidMachine 适配器以 NativeAd 对象的形式返回其原生广告。它会为 NativeAd 填充以下字段。
| 字段 | BidMachine 适配器始终包含的资源 |
|---|---|
| 标题 | |
| 图片 | |
| 正文 | |
| 图标 | |
| 号召性用语 | |
| 星级 | |
| 商店 | |
| 价格 | |
| 广告客户 |
错误代码
如果适配器未能收到来自 BidMachine 的广告,您可以使用 ResponseInfo.getAdSourceResponses() 来检查广告响应中归属于以下类的底层错误:
io.bidmachine
com.google.ads.mediation.bidmachine
以下是当广告加载失败时,BidMachine 适配器会抛出的代码和随附的消息:
| 错误代码 | 网域 | 原因 |
|---|---|---|
| 100 | com.google.ads.mediation.bidmachine | 收到的展示位置 ID 无效或为空。 |
| 101 | com.google.ads.mediation.bidmachine | 信号收集期间出错:未找到信号数据配置。 |
| 102 | com.google.ads.mediation.bidmachine | 在信号收集期间收到了无效的广告格式。 |
| 103 | com.google.ads.mediation.bidmachine | 请求的广告尺寸无法映射到 bidmachine.BannerSize |
| 104 | com.google.ads.mediation.bidmachine | 已加载的 BidMachine 广告请求已过期。 |
| 105 | com.google.ads.mediation.bidmachine | 无法显示全屏广告。 |
| 106 | com.google.ads.mediation.bidmachine | BidMachine SDK 返回了包含 null 广告数据的 onAdLoaded() 回调。 |
BidMachine Android 中介适配器变更日志
下一版本
- 将
AgeRestrictedTreatment映射到 BidMachine 的 COPPA API。
版本 3.7.0.0
- 已验证与 BidMachine SDK 3.7.0 版的兼容性。
构建和测试所需版本:
- Google 移动广告 SDK 25.1.0 版。
- Google 移动广告新一代 SDK 1.1.0 版。
- BidMachine SDK 3.7.0 版。
版本 3.6.1.0
- 添加了使用 GMA 新一代 SDK 依赖项构建适配器的属性。
- 已验证与 BidMachine SDK 3.6.1 版的兼容性。
构建和测试所需版本:
- Google 移动广告 SDK 25.1.0 版。
- BidMachine SDK 3.6.1 版。
版本 3.5.1.2
- 更新了 BidMachine 适配器以使用 AdPlacementConfig。
构建和测试所需版本:
- Google 移动广告 SDK 24.9.0 版。
- BidMachine SDK 3.5.1 版。
版本 3.5.1.1
- 添加了对将
tagForUnderAgeOfConsentGoogle 移动广告 SDK 参数转发到 BidMachine SDK 的支持。
构建和测试所需版本:
- Google 移动广告 SDK 24.9.0 版。
- BidMachine SDK 3.5.1 版。
版本 3.5.1.0
- 已验证与 BidMachine SDK 3.5.1 版的兼容性。
构建和测试所需版本:
- Google 移动广告 SDK 24.9.0 版。
- BidMachine SDK 3.5.1 版。
版本 3.5.0.0
- 已验证与 BidMachine SDK 3.5.0 版的兼容性。
构建和测试所需版本:
- Google 移动广告 SDK 24.7.0 版。
- BidMachine SDK 3.5.0 版。
版本 3.4.0.1
- 移除了对
Context对象的类级引用,以帮助解决内存泄漏问题。 - 更新了适配器,以支持尺寸接近其支持的格式的横幅广告请求,而不是要求尺寸完全匹配。
构建和测试所需版本:
- Google 移动广告 SDK 24.7.0 版。
- BidMachine SDK 版本 3.4.0
版本 3.4.0.0
- 为横幅广告、插页式广告、激励广告和原生广告格式添加了瀑布流支持。
- 适配器现在会转发
onAdOpened()(包含onAdImpression())以用于全屏广告。 - 已验证与 BidMachine SDK 3.4.0 版的兼容性。
构建和测试所需版本:
- Google 移动广告 SDK 24.6.0 版。
- BidMachine SDK 3.4.0 版。
版本 3.3.0.0
- 初始版本。
构建和测试所需版本:
- Google 移动广告 SDK 24.5.0 版。
- BidMachine SDK 3.3.0 版。