将 Chartboost 与中介集成

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

支持的集成和广告格式

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

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

要求

  • Android API 级别 21 或更高级别

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

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

Chartboost 应用信息中心

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

应用管理

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

新应用表单

创建应用后,系统会将您定向到应用的信息中心。记下应用的应用 ID应用签名

应用设置

AdMob 需要使用 Chartboost 用户 ID用户签名来设置 AdMob 广告单元 ID。点击 Chartboost 界面上的 Chartboost 中介,即可找到这些参数。

Chartboost 中介信息中心

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

Chartboost API 探索器

开启测试模式

您可以为应用启用测试模式,方法是从 Chartboost 界面转到 Apps management(应用管理)标签页,从列表中选择您的应用,然后点击 Edit app settings(修改应用设置)。

修改应用设置

在应用的设置中,您可以开启/关闭测试模式

Chartboost 测试模式

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

在您能够收到 Chartboost 测试广告后,您的应用将被列入 Chartboost 的发布商应用审核中。如需通过 Chartboost 创收,发布商应用审核需要获得 Chartboost 的批准。

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

为广告单元配置中介设置

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

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

要创建新的中介组,请选择创建中介组

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

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

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

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

添加为广告来源 Chartboost

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

选择 Chartboost 并启用优化开关。输入在上一部分获得的 User ID and User Signature,为Chartboost设置广告来源优化。 然后,为Chartboost 输入有效每千次展示费用值,并点击继续

如果您已有 Chartboost的映射,则可以选择它。否则,请点击添加映射

接下来,输入在上一部分中获取的 App ID, App Signature and Ad Location。接着,点击完成

Chartboost 广告位置(已命名的位置)是一些简单的名称,用于表示您要在应用中展示广告的位置。AdMob 会向设置中指定的位置发送请求。请求发送后,Chartboost 会将该位置信息添加到其平台中,以用于生成报告。用户还可以先直接在 Chartboost 平台中创建新的广告位置,然后再在游戏中调用他们。

在 Chartboost 界面中,通过点击 Advanced Settings,您可以在 Basic Settings 页面中查看您的广告位置。如需了解详情,请参阅 Chartboost 的命名位置指南。

最后,点击 Done(完成)以将 Chartboost 添加为广告来源,然后点击 Save(保存)。

将 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.5.0")
    implementation("com.google.ads.mediation:chartboost:9.7.0.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 (Waterfall)

可选步骤

权限

为了获得最佳性能,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.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 的 Adapter 项目

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 文件的依赖项标记,从而将适配器添加为编译依赖项: compile 'com.google.ads.mediation:chartboost:6.6.0.0'
  • 改为以 aar 文件(而非 jar 文件)分发适配器(如需了解更多说明,请参阅自述文件)。

版本 1.1.0

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

版本 1.0.0

  • 初始版本。支持基于奖励的视频广告和插页式广告。