将 BidMachine 与 AdMob 中介集成

本指南介绍了如何使用 Google Mobile Ads SDK for React Native 通过 AdMob 中介加载和展示来自 BidMachine 的广告,其中涵盖了出价集成。其中介绍了如何将 BidMachine 添加到广告单元的中介配置,以及如何将 BidMachine SDK 和适配器集成到 React Native 原生应用中。

支持的集成和广告格式

BidMachine 的 AdMob 中介适配器具有以下功能:

集成
出价
瀑布  1
表现形式
开屏广告
横幅广告
插页式广告
已获得奖励
插页式激励广告
原生

1 瀑布流集成功能目前处于封闭式 Beta 版阶段,请与您的客户经理联系,申请访问权限。

前提条件

在继续操作之前,请验证以下事项:

  • 最新 Google Mobile Ads SDK for React Native 版本。
  • React Native 框架 0.85.0 版或更高版本。
  • 如需在 Android 上部署,则要求:
    • Android API 级别 24 或更高级别。
  • 如需在 iOS 上部署,则要求:
    • iOS 部署目标版本为 13.0 或更高版本。
  • 已配置 Google Mobile Ads SDK for React Native 的 React Native 项目,该项目应正常运行。如需了解详情,请参阅使用入门。
  • 设置 AdMob 中介。

第 1 步:在 BidMachine 界面中设置配置

登录 BidMachine 账号信息中心。

创建新展示位置

前往来源标签页,然后在来源表格下选择修改按钮。

来源信息中心

系统会显示您拥有的所有展示位置的列表。如需创建新的展示位置,请点击对话框中的添加展示位置按钮。

“修改来源”对话框

选择出价作为展示位置类型。填写表单并点击保存。

Android

创建 Android 展示位置

iOS

创建 iOS 广告展示位置

最后,记下展示位置 ID。

Android

Android 地点详情

iOS

iOS 展示位置详情

更新 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 需求

为广告单元配置中介设置

Android

如需查看相关说明,请参阅 Android 指南中的第 2 步。

iOS

如需查看相关说明,请参阅 iOS 指南中的第 2 步。

将 BidMachine 添加到 GDPR 和美国州级法规广告合作伙伴名单中

请按照欧洲法规设置和美国州级法规设置中的步骤,将 BidMachine 添加到 AdMob 界面内的欧洲法规和美国州级法规广告合作伙伴名单中。

第 3 步:导入 BidMachine SDK 和适配器

在项目的根目录中,安装适用于 BidMachine 的 Google Mobile Ads SDK for React Native 中介适配器。请完成以下操作:

  1. 将 Google Mobile Ads SDK for React Native 适配器 tar 文件从 gma-sdk-react-native/adapters/bidmachine/ 目录复制到项目的 local_packages/ 目录中。如果您没有 adapters 文件夹,请参阅前提条件。

    mkdir -p local_packages
    cp EXTRACT_DIR/gma-sdk-react-native/adapters/bidmachine/gma-mediation-bidmachine-0.1.0.tgz local_packages/
    

    将 EXTRACT_DIR 替换为解压缩归档文件的目录的路径。

  2. 使用您首选的软件包管理器安装适配器软件包:

    npm

    npm install ./local_packages/gma-mediation-bidmachine-0.1.0.tgz
    

    纱线

    yarn add ./local_packages/gma-mediation-bidmachine-0.1.0.tgz
    

  3. 如果您要针对 Android 进行构建,请将以下代码库添加到项目 android 目录中的 build.gradle 文件:

    repositories {
        google()
        mavenCentral()
        maven {
            url = uri("https://artifactory.bidmachine.io/bidmachine")
        }
    }
    

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

为了遵守 Google 的《欧盟地区用户意见征求政策》,您必须向位于欧洲经济区 (EEA)、英国和瑞士境内的用户披露相关信息;在法律有相应要求的情况下,如果您要使用 Cookie 或其他本地存储方式,须征得用户同意;如果需要收集、共享和使用个人数据来实现广告个性化,也须征得用户的同意。此政策反映了欧盟《电子隐私指令》和《一般数据保护条例》(GDPR) 的要求。您要负责验证用户意见是否已传播到中介链中的每个广告来源。

BidMachine React Native 适配器 0.1.0 及更高版本支持将 GDPR 意见征求信号从与 IAB 透明度和用户意见征求框架 (TCF) 集成的意见征求管理平台传递到 BidMachine SDK。 如需了解详情,请参阅 BidMachine 的 Android 和 iOS GDPR 文档。

美国州级隐私保护法律

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

BidMachine 会自动读取由意见征求管理平台(包括 UMP SDK)设置的 GPP 意见征求。如需了解详情,请参阅 BidMachine 针对 Android 和 iOS 的 GPP 指南。

第 5 步:添加必需的代码

Android

集成 BidMachine 无需额外代码。

iOS

SKAdNetwork 集成

按照 BidMachine 关于 SKAdNetwork 支持的文档,将 SKAdNetwork 标识符添加到项目的 Info.plist 文件中。

第 6 步:测试您的实现

启用测试广告

确保针对 AdMob 注册测试设备。

请按照 BidMachine 文档中适用于 Android 和 iOS 的说明,为 BidMachine 启用测试模式。

验证测试广告

若要验证您是否能收到来自 BidMachine 的测试广告,请在广告检查器中启用单个广告来源测试,并选择 BidMachine (Bidding)(BidMachine [出价])作为广告来源。

错误代码

如果适配器未能收到来自 BidMachine 的广告,发布商可以使用 ResponseInfo 来检查广告响应中归属于以下类的底层错误:

Android

io.bidmachine
com.google.ads.mediation.bidmachine

iOS

GADMediationAdapterBidMachine

以下是当广告加载失败时,BidMachine 适配器会抛出的代码和随附的消息:

Android

错误代码 网域 原因
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 返回了 onAdLoaded() 回调,其中包含 null 广告数据。
107 com.google.ads.mediation.bidmachine 来源 ID 缺失或为空。

iOS

错误代码 网域 原因
101 com.google.mediation.bidmachine 服务器配置缺少必需的发布商 ID。
102 com.google.mediation.bidmachine 出价信号收集请求失败,因为实时出价参数不包含广告格式,或指定的格式不受支持。
103 com.google.mediation.bidmachine 用于加载广告的广告配置无效。
104 com.google.mediation.bidmachine BidMachine SDK 向横幅广告的 BidMachineAdProtocol didLoadAd 委托方法返回了非横幅广告。绝不应发生。
105 com.google.mediation.bidmachine 全屏广告尚未准备好展示。
106 com.google.mediation.bidmachine Bid Machine SDK 向原生广告的 BidMachineAdProtocol didLoadAd 委托方法返回了非原生广告。绝不应发生。
107 com.google.mediation.bidmachine 未能加载其中一个原生广告图片来源。
108 com.google.mediation.bidmachine BidMachine 不支持此横幅广告尺寸。

版本 0.1.0

  • 初始版本。