将 Chartboost 与中介集成

本指南介绍了如何使用 Google 移动广告 SDK 使用 AdMob 中介加载和显示来自 Chartboost 的广告,并涵盖广告瀑布流集成。其中介绍了如何将 Chartboost 添加到广告单元的中介配置,以及如何将 Chartboost SDK 和适配器集成到 Android 应用中。

支持的集成和广告格式

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

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

要求

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

注册 Chartboost 账号,并在账号通过验证后登录。然后,前往应用管理标签页。

Chartboost 应用信息中心

点击添加新应用按钮以创建应用。

应用管理

填写表单的其余部分,然后点击添加应用按钮以最终确定应用。

新应用表单

创建应用后,您将进入其信息中心。记下应用的应用 ID应用签名

应用设置

AdMob 要求您提供 Chartboost 用户 ID用户签名,才能设置 AdMob 广告单元 ID。您可以在 Chartboost 界面中点击 Chartboost 中介,找到这些参数。

Chartboost Mediation 信息中心

前往 Resources > API Explorer 标签页,记下 Authentication 部分下的 User IDUser Signature

Chartboost API Explorer

开启测试模式

如需为应用启用测试模式,请前往 Chartboost 界面的应用管理标签页,从列表中选择您的应用,然后点击修改应用设置

修改应用设置

您可以在应用的设置中为应用切换测试模式

Chartboost 测试模式

启用测试模式后,您可以使用之前创建的广告单元 ID 请求广告,并接收 Chartboost 测试广告。

在您能够接收 Chartboost 测试广告后,您的应用将被列入 Chartboost 的发布商应用审核名单。若要在 Chartboost 上创收,发布商应用审核需要获得 Chartboost 批准。

第 2 步:在 AdMob 界面中设置 Chartboost 需求来源

为广告单元配置中介设置

您需要将 Chartboost 添加到广告单元的中介配置中。

首先,登录您的 AdMob 账号。接下来,前往中介标签页。如果您有现有中介组要修改,请点击该中介组的名称进行修改,然后跳至将 Chartboost 添加为广告来源

如需创建新的中介组,请选择创建中介组

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

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

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

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

将 Chartboost 添加为广告来源


广告来源部分的广告瀑布流卡片下,选择添加广告来源。然后选择 Chartboost

选择 Chartboost,然后启用 Optimize 开关。输入在上一部分中获取的用户 ID用户签名,以便为 Chartboost 设置广告来源优化。 然后,为 Chartboost 输入有效每千次展示费用值,然后点击继续



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

接下来,输入您在上一部分中获取的应用 ID应用签名广告位置。然后,点击完成

Chartboost 广告位置(命名位置)是指表示您要在应用中展示广告的位置的简单名称。AdMob 会将请求发送到设置中指定的位置。发送请求后,Chartboost 会将相应营业地点添加到其平台,以便生成报告。用户还可以在 Chartboost 平台中直接创建新的广告展示位置,然后再在游戏中调用这些展示位置。

在 Chartboost 界面中,您可以点击高级设置,在基本设置页面中查看您的广告展示位置。如需了解详情,请参阅 Chartboost 的 [命名位置](//docs.chartboost.com/zh-CN/monetization/publishing/ad-locations/)指南。
最后,点击完成将 Chartboost 添加为广告来源,然后点击保存

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

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

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

在项目级 settings.gradle.kts 文件中,添加以下代码库:

dependencyResolutionManagement {
  repositories {
    google()
    mavenCentral()
    maven {
      url = uri("https://cboost.jfrog.io/artifactory/chartboost-ads/")
    }
  }
}

然后,在应用级 build.gradle.kts 文件中,添加以下实现依赖项和配置。使用最新版本的 Chartboost SDK 和适配器:

dependencies {
    implementation("com.google.android.gms:play-services-ads:23.6.0")
    implementation("com.google.ads.mediation:chartboost:9.8.1.0")
}

手动集成

  1. 从 Maven Central 下载最新版 Chartboost SDK.aar 文件,并将其添加到您的项目中。

  2. 前往 Google 的 Maven 制品库中的 Chartboost 适配器工件。选择最新版本,下载 Chartboost 适配器的 .aar 文件,然后将其添加到您的项目中。

第 4 步:在 Chartboost SDK 中实现隐私设置

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

在 SDK 8.1.0 版中,Chartboost 添加了 addDataUseConsent() 方法。以下示例代码将数据使用意见征求设置为 NON_BEHAVIORAL。如果您选择调用此方法,建议您先调用此方法,然后再通过 Google 移动广告 SDK 请求广告。

Java

DataUseConsent dataUseConsent = new GDPR(GDPR.GDPR_CONSENT.NON_BEHAVIORAL);
Chartboost.addDataUseConsent(context, dataUseConsent);

Kotlin

val dataUseConsent = GDPR(GDPR.GDPR_CONSENT.NON_BEHAVIORAL)
Chartboost.addDataUseConsent(context, dataUseConsent)

如需了解详情以及可在每种方法中提供的值,请参阅 Chartboost 的 GDPR 文章Android 隐私权方法

美国州级隐私保护法律

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

在 SDK 8.1.0 版中,Chartboost 添加了 addDataUseConsent() 方法。以下示例代码将数据使用意见征求设置为 OPT_IN_SALE。如果您选择调用此方法,建议您先调用此方法,然后再通过 Google 移动广告 SDK 请求广告。

Java

DataUseConsent dataUseConsent = new CCPA(CCPA.CCPA_CONSENT.OPT_IN_SALE);
Chartboost.addDataUseConsent(context, dataUseConsent);

Kotlin

val dataUseConsent = CCPA(CCPA.CCPA_CONSENT.OPT_IN_SALE)
Chartboost.addDataUseConsent(context, dataUseConsent)

如需了解详情以及可在每种方法中提供的值,请参阅 Chartboost 的 CCPA 文章Android 隐私权方法

第 5 步:添加所需代码

修改 AndroidManifest

其他元素

AndroidManifest.xml 文件中,将以下属性添加到将展示 Chartboost 广告且支持不同屏幕方向的每个 activity:

android:configChanges="keyboardHidden|orientation|screenSize"

生命周期事件

根据 Chartboost 的建议,请将以下代码添加到将展示 Chartboost 广告的所有 activity 生命周期事件。

Java

import com.chartboost.sdk.Chartboost;
// ...

@Override
public void onBackPressed() {
    // If an interstitial is on screen, close it.
    if (Chartboost.onBackPressed()) {
        return;
    } else {
        super.onBackPressed();
    }
}

Kotlin

import com.chartboost.sdk.Chartboost
// ...

@Override
fun onBackPressed() {
    // If an interstitial is on screen, close it.
    if (Chartboost.onBackPressed())
        return
    else
        super.onBackPressed()
}

第 6 步:测试您的实现

启用测试广告

请务必为 AdMob 注册测试设备,并在 Chartboost 界面中启用测试模式

验证测试广告

如需验证您是否在接收来自 Chartboost 的测试广告,请在广告检查器中使用 Chartboost(瀑布流)广告来源启用单一广告来源测试

可选步骤

权限

为了获得最佳性能,Chartboost 建议您将以下可选权限添加到应用的 AndroidManifest.xml 文件中:

<uses-permission android:name="android.permission.READ_PHONE_STATE" />

错误代码

如果适配器未能从 Chartboost 收到广告,您可以使用以下类下的 ResponseInfo.getAdapterResponses() 检查广告响应的底层错误:

com.google.ads.mediation.chartboost.ChartboostAdapter
com.google.ads.mediation.chartboost.ChartboostMediationAdapter

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

错误代码 原因
0-99 Chartboost SDK 返回了错误。如需了解详情,请参阅 Chartboost 的文档
101 请求的广告尺寸与 Chartboost 支持的横幅广告尺寸不符。
102 Chartboost 一次只能在每个位置加载 1 个广告。
103 在 AdMob 界面中配置的 Chartboost 服务器参数缺失/无效。
104 Chartboost 插页式广告或激励广告尚未准备好展示。

Chartboost Android 中介适配器变更日志

版本 9.8.1.0

  • 已经验证与 Chartboost SDK 版本 9.8.1 兼容。

构建和测试所需版本:

  • Google 移动广告 SDK 23.5.0 版。
  • Chartboost SDK 版本 9.8.1。

版本 9.8.0.0

  • 已经验证与 Chartboost SDK 版本 9.8.0 兼容。

构建和测试所需版本:

  • Google 移动广告 SDK 23.4.0 版。
  • Chartboost SDK 版本 9.8.0。

版本 9.7.0.0

  • 已验证与 Chartboost SDK 版本 9.7.0 的兼容性。
  • 将最低要求的 Google 移动广告 SDK 版本更新为 23.0.0。

构建和测试所需版本:

  • Google 移动广告 SDK 23.0.0 版。
  • Chartboost SDK 版本 9.7.0。

版本 9.6.1.0

  • 已经验证与 Chartboost SDK 版本 9.6.1 兼容。

构建和测试所需版本:

  • Google 移动广告 SDK 22.6.0 版。
  • Chartboost SDK 版本 9.6.1。

版本 9.6.0.0

  • 已经验证与 Chartboost SDK 版本 9.6.0 兼容。

构建和测试所需版本:

  • Google 移动广告 SDK 22.5.0 版。
  • Chartboost SDK 版本 9.6.0。

版本 9.5.0.0

  • 已验证与 Chartboost SDK 版本 9.5.0 的兼容性。

构建和测试所需版本:

  • Google 移动广告 SDK 22.3.0 版。
  • Chartboost SDK 版本 9.5.0。

版本 9.4.1.0

  • 已验证与 Chartboost SDK 版本 9.4.1 的兼容性。

构建和测试所需版本:

  • Google 移动广告 SDK 22.2.0 版。
  • Chartboost SDK 版本 9.4.1。

版本 9.4.0.0

  • 已验证与 Chartboost SDK 版本 9.4.0 的兼容性。

构建和测试所需版本:

  • Google 移动广告 SDK 22.1.0 版。
  • Chartboost SDK 版本 9.4.0。

版本 9.3.1.0

  • 已经验证与 Chartboost SDK 版本 9.3.1 兼容。

构建和测试所需版本:

  • Google 移动广告 SDK 22.1.0 版。
  • Chartboost SDK 版本 9.3.1。

版本 9.3.0.0

  • 已验证与 Chartboost SDK 版本 9.3.0 的兼容性。

构建和测试所需版本:

  • Google 移动广告 SDK 22.0.0 版。
  • Chartboost SDK 版本 9.3.0。

版本 9.2.1.1

  • 更新了适配器,以使用新的 VersionInfo 类。
  • 将最低要求的 Google 移动广告 SDK 版本更新为 22.0.0。

构建和测试所需版本:

  • Google 移动广告 SDK 22.0.0 版。
  • Chartboost SDK 版本 9.2.1。

版本 9.2.1.0

  • 已验证与 Chartboost SDK 9.2.1 的兼容性。

构建和测试所需版本:

  • Google 移动广告 SDK 21.5.0 版。
  • Chartboost SDK 版本 9.2.1。

版本 9.2.0.0

  • 已验证与 Chartboost SDK 9.2.0 的兼容性。
  • 将最低要求的 Google 移动广告 SDK 版本更新为 21.5.0。

构建和测试所需版本:

  • Google 移动广告 SDK 21.5.0 版。
  • Chartboost SDK 版本 9.2.0。

版本 9.1.1.0

  • 添加了 ChartboostMediationAdapter.setAppParams(String, String) 方法,作为一种可选方法,用于对要用于初始化 Chartboost SDK 的应用 ID 和应用签名进行硬编码。
  • 已验证与 Chartboost SDK 9.1.1 的兼容性。
  • 将最低要求的 Google 移动广告 SDK 版本更新为 21.3.0。

构建和测试所需版本:

  • Google 移动广告 SDK 21.3.0 版。
  • Chartboost SDK 版本 9.1.1。

版本 8.4.3.1

  • 将最低要求的 Google 移动广告 SDK 版本更新为 21.0.0。
  • 将所需的最低 Android API 级别更新为 19。

构建和测试所需版本:

  • Google 移动广告 SDK 21.0.0 版。
  • Chartboost SDK 版本 8.4.3。

版本 8.4.3.0

  • 已验证与 Chartboost SDK 8.4.3 的兼容性。

构建和测试所需版本:

  • Google 移动广告 SDK 20.6.0 版。
  • Chartboost SDK 版本 8.4.3。

版本 8.4.2.0

  • 已验证与 Chartboost SDK 8.4.2 的兼容性。
  • compileSdkVersiontargetSdkVersion 更新为 API 31。
  • 将最低要求的 Google 移动广告 SDK 版本更新为 20.6.0。

构建和测试所需版本:

  • Google 移动广告 SDK 20.6.0 版。
  • Chartboost SDK 版本 8.4.2。

版本 8.4.1.0

  • 已验证与 Chartboost SDK 8.4.1 的兼容性。
  • 将最低要求的 Google 移动广告 SDK 版本更新为 20.6.0。

构建和测试所需版本:

  • Google 移动广告 SDK 20.6.0 版。
  • Chartboost SDK 版本 8.4.1。

版本 8.3.1.0

  • 已验证与 Chartboost SDK 8.3.1 的兼容性。
  • 更新了适配器以使用新的 AdError API。

构建和测试所需版本:

  • Google 移动广告 SDK 20.5.0 版。
  • Chartboost SDK 版本 8.3.1。

版本 8.3.0.0

  • 已经验证与 Chartboost SDK 8.3.0 兼容。
  • 将最低要求的 Google 移动广告 SDK 版本更新为 20.5.0。

构建和测试所需版本:

  • Google 移动广告 SDK 20.5.0 版。
  • Chartboost SDK 版本 8.3.0。

版本 8.2.1.0

  • 已验证与 Chartboost SDK 8.2.1 的兼容性。
  • 将最低要求的 Google 移动广告 SDK 版本更新为 20.1.0。

构建和测试所需版本:

  • Google 移动广告 SDK 20.1.0 版。
  • Chartboost SDK 版本 8.2.1。

版本 8.2.0.1

  • 将最低要求的 Google 移动广告 SDK 版本更新为 20.0.0。

构建和测试所需版本:

  • Google 移动广告 SDK 20.0.0 版。
  • Chartboost SDK 版本 8.2.0。

版本 8.2.0.0

  • 已验证与 Chartboost SDK 8.2.0 的兼容性。
  • 将最低要求的 Google 移动广告 SDK 版本更新为 19.5.0。

构建和测试所需版本:

  • Google 移动广告 SDK 19.5.0 版。
  • Chartboost SDK 版本 8.2.0。

版本 8.1.0.0

  • 已经验证与 Chartboost SDK 8.1.0 的兼容性。

构建和测试所需版本:

  • Google 移动广告 SDK 19.2.0 版。
  • Chartboost SDK 版本 8.1.0。

版本 8.0.3.2

  • 添加了描述性错误代码和适配器加载/显示失败的原因。
  • 将最低要求的 Google 移动广告 SDK 版本更新为 19.2.0。

构建和测试所需版本:

  • Google 移动广告 SDK 19.2.0 版。
  • Chartboost SDK 版本 8.0.3。

版本 8.0.3.1

  • 添加了对 Chartboost 横幅广告的支持。

构建和测试所需版本:

  • Google 移动广告 SDK 19.1.0 版。
  • Chartboost SDK 版本 8.0.3。

版本 8.0.3.0

  • 已经验证与 Chartboost SDK 8.0.3 兼容。
  • 将最低要求的 Google 移动广告 SDK 版本更新为 19.1.0。

构建和测试所需版本:

  • Google 移动广告 SDK 19.1.0 版。
  • Chartboost SDK 版本 8.0.3。

版本 8.0.2.0

  • 已验证与 Chartboost SDK 8.0.2 的兼容性。
  • 将最低要求的 Google 移动广告 SDK 版本更新为 19.0.1。

构建和测试所需版本:

  • Google 移动广告 SDK 19.0.1 版。
  • Chartboost SDK 版本 8.0.2。

版本 8.0.1.0

  • 已验证与 Chartboost SDK 8.0.1 的兼容性。
  • 需要 Chartboost SDK 8.0.1 或更高版本。
  • 不再需要 activity 上下文即可加载广告。

构建和测试所需版本:

  • Google 移动广告 SDK 18.3.0 版。
  • Chartboost SDK 版本 8.0.1。

版本 7.5.0.1

  • 修复了 Chartboost 适配器未能调用广告事件的 bug。
  • 将最低要求的 Google 移动广告 SDK 版本更新为 18.3.0。

构建和测试所需版本:

  • Google 移动广告 SDK 18.3.0 版。
  • Chartboost SDK 版本 7.5.0。

版本 7.5.0.0

  • 已验证与 Chartboost SDK 7.5.0 的兼容性。
  • 迁移了适配器以使用 AndroidX 依赖项。
  • 将最低要求的 Google 移动广告 SDK 版本更新为 18.1.1。

版本 7.3.1.1

  • 更新了适配器,以支持新的公开 Beta 版激励广告 API。
  • 将最低要求的 Google 移动广告 SDK 版本更新为 17.2.0。

版本 7.3.1.0

  • 已验证与 Chartboost SDK 7.3.1 的兼容性。

版本 7.3.0.0

  • 已验证与 Chartboost SDK 7.3.0 的兼容性。

版本 7.2.1.0

  • 已验证与 Chartboost SDK 7.2.1 的兼容性。

版本 7.2.0.1

  • 更新了适配器以调用 onRewardedVideoComplete() 广告事件。

版本 7.2.0.0

  • 已经验证与 Chartboost SDK 7.2.0 兼容。

版本 7.1.0.0

  • 已验证与 Chartboost SDK 7.1.0 的兼容性。

版本 7.0.1.0

  • 已验证与 Chartboost SDK 7.0.1 的兼容性。
  • 添加了对新的 Chartboost 错误代码的支持。
  • 更新了适用于 Android Studio 3.0 的适配器项目

版本 7.0.0.0

  • 更新了适配器,使其与 Chartboost SDK 7.0.0 兼容。

版本 6.6.3.0

  • 已验证与 Chartboost SDK 6.6.3 的兼容性。

版本 6.6.2.0

  • 已经验证与 Chartboost SDK 6.6.2 兼容。

版本 6.6.1.0

  • 已验证与 Chartboost SDK 6.6.1 的兼容性。

版本 6.6.0.0

  • 将版本命名系统更改为 [Chartboost SDK 版本].[适配器补丁版本]。
  • 现在,您可以将适配器添加为编译依赖项,只需将以下代码添加到 build.gradle 文件的 dependencies 标记中即可:compile 'com.google.ads.mediation:chartboost:6.6.0.0'
  • 改为以 aar 文件(而非 jar 文件)分发适配器(如需了解更多说明,请参阅自述文件)。

版本 1.1.0

  • 从 Chartboost 附加信息中移除了 Chartboost 广告位置。现在,在 AdMob 控制台中配置 Chartboost 中介时,需要指定广告位置。

版本 1.0.0

  • 初始版本。支持激励视频广告和插页式广告。