本指南介绍了如何使用 GMA Next-Gen SDK 通过 AdMob 中介加载和展示来自 BidMachine 的广告(内容涵盖出价集成)。如何将 BidMachine 添加到广告单元的中介配置,以及如何将 BidMachine SDK 和适配器集成到 Android 应用中。
支持的集成和广告格式
BidMachine 的中介适配器具有以下功能:
| 集成 | |
|---|---|
| 出价 | 1 |
| 瀑布 | 3 |
| 表现形式 | |
| 应用启动 | |
| 横幅 | |
| 插页式广告 | |
| 激励广告 | |
| 插页式激励广告 | |
| 原生 | 2 |
1 出价集成功能目前处于非公开 Beta 版阶段,请与您的客户经理联系,申请使用该功能。
2 原生广告格式处于 Alpha 阶段。 所有其他受支持的广告格式均处于 Beta 版阶段。请与您的客户经理联系,申请访问权限。
3 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。然后点击完成。

瀑布
在广告来源部分的瀑布流卡片下,选择添加广告来源。
选择 BidMachine。 然后,为 BidMachine 输入有效每千次展示费用值,并点击继续。

如果您已为 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:0.23.0-beta01") implementation("com.google.ads.mediation:bidmachine:3.5.1.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.23.0-beta01' implementation 'com.google.ads.mediation:bidmachine:3.5.1.1' } 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 的测试广告,请在广告检查器中启用 single ad source testing(单个广告来源测试),并选择 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 中介适配器变更日志
版本 3.5.1.1
- 添加了对将 tagForUnderAgeOfConsent Google 移动广告 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 版。