将 Chartboost 与中介集成

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

支持的集成和广告格式

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

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

要求

  • Android API 级别 21 或更高级别
  • 最新版 Google 移动广告 SDK

  • 完成中介流程 入门指南

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

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

Chartboost 应用信息中心

点击 Add new app 按钮创建应用。

应用管理

填写表单的其余部分,然后点击 Add App(添加应用)按钮,完成应用。

新建应用表单

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

应用设置

Ad Manager 需要 Chartboost 用户 ID用户签名,用于设置您的 Ad Manager 广告单元 ID。您可以通过点击 Chartboost 界面中的 Chartboost 中介找到这些参数。

Chartboost 中介信息中心

转到资源 > API Explorer 标签页,并记下身份验证部分下的用户 ID用户签名

Chartboost API Explorer

开启测试模式

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

修改应用设置

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

Chartboost 测试模式

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

在您能够收到 Chartboost 测试广告后,您的应用将会参与 Chartboost 的 Publisher App Review 审核。为了确保 Chartboost 能够正常使用创收功能,发布商应用审核需要获得 Chartboost 的批准。

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

为广告单元配置中介设置

登录您的 Ad Manager 帐号

依次转到投放 > 收益组,然后点击新建收益组按钮。

为您的收益组输入一个独一无二的名称,将状态设为有效,选择广告格式,然后将广告资源类型设为移动应用。在定位 > 广告资源部分下,选择广告资源移动应用(您要向其中添加中介)下方的广告单元。

接下来,点击添加收益合作伙伴按钮。

如果您已有Chartboost的收益合作伙伴,可以选择它。否则,请选择创建新的收益合作伙伴

选择 Chartboost 作为广告联盟,输入一个具有唯一性的名称并启用中介

开启自动收集数据,然后输入在上一部分中获取的User ID and User Signature

选择收益合作伙伴后,选择移动 SDK 中介作为集成类型,选择 Android 作为平台,选择有效作为状态。输入在上一部分获得的App ID, App Signature and Ad Location 。然后,输入默认每千次展示费用值。

Chartboost 广告位置(已命名的位置)是一些简单的名称,代表您要在应用中展示广告的位置。Ad Manager 会向设置中指定的位置发送请求。请求发送后,Chartboost 会将该位置信息添加到其界面中,以供报告之用。

在 Chartboost 界面中,点击 Advanced Settings 方法,即可在 Basic Settings 页面中显示您的广告位置。如需了解详情,请参阅 Chartboost 命名的位置指南。

完成后,点击页面底部的保存

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

按照 GDPR 设置美国州级法规设置 中的步骤,将 Chartboost 添加到 Ad Manager 界面中的 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.2.0")
    implementation("com.google.ads.mediation:chartboost:9.7.0.0")
}

手动集成

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

  2. 前往 Chartboost 适配器工件 。选择最新版本,下载 Chartboost 适配器的 .aar 文件,并将其添加到您的项目。

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

根据 Google 欧盟地区用户意见征求 政策,因此您必须确保向 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 隐私保护方法 了解更多详细信息以及每种方法中提供的值。

美国州级隐私保护法律

美国州级隐私保护法律 要求向用户提供 以拒绝“销售”交易的“个人信息”(因为法律规定 这些条款),同时在其页面上以醒目方式显示“Do Not Sell My Personal”(不出售我的个人数据) 信息”请点击“销售”链接主页。通过 美国州/省/自治区/直辖市隐私权 法律合规指南提供了一项新功能, 受限的数据处理 用于 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 中的每个 activity 文件中,该文件将展示 Chartboost 广告,且支持不同屏幕方向:

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 步:测试实现效果

启用测试广告

请务必为Ad Manager 注册您的测试设备,并在 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 界面中配置的 Chartboost 服务器参数 Ad Manager 缺失/无效。
104 Chartboost 插页式广告或激励广告尚未准备好展示。
101 界面中配置的 Chartboost 服务器参数 Ad Manager 缺失/无效。
102 Chartboost SDK 返回了初始化错误。
103 Chartboost 广告在显示时未进行缓存。
104 请求的广告尺寸与 Chartboost 支持的横幅广告尺寸不匹配。
105 设备的操作系统版本低于 Chartboost SDK 支持的最低操作系统版本。
200-299 Chartboost SDK 缓存错误。请参阅代码 了解详情。
300-399 Chartboost SDK 会显示错误。请参阅代码 了解详情。
400-499 Chartboost SDK 点击错误。请参阅代码 了解详情。

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 或更高版本。
  • 加载广告不再需要活动上下文。

构建和测试时所用平台:

  • 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 version].[adapter patch version]。
  • 现在,可以通过添加以下代码,将适配器添加为编译依赖项 添加到 build.gradle 文件的依赖项标记中: compile 'com.google.ads.mediation:chartboost:6.6.0.0'
  • 改为以 aar(而非 jar 文件)的形式分发适配器 (有关其他说明,请参见自述文件)。

版本 1.1.0

  • 从 Chartboost extra 中移除了 Chartboost 广告位置。“广告位置”现为 (在 AdMob 控制台中为中介配置 Chartboost 时指定)。

版本 1.0.0

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