将 Tapjoy 与中介集成

本指南介绍了如何使用 Google 移动广告 SDK 利用中介从 Tapjoy 加载和展示广告,其中包括出价和广告瀑布流集成。该指南介绍了如何将 Tapjoy 添加到广告单元的中介配置中,以及如何将 Tapjoy SDK 和适配器集成到 Unity 应用中。

支持的集成和广告格式

Tapjoy 的 Ad Manager 中介适配器具有以下功能:

集成
出价
瀑布
表现形式
横幅
插页式广告
已奖励

要求

  • Unity 4 或更高版本
  • 最新版 Google 移动广告 SDK
  • [用于出价]:适用于 Tapjoy 2.3.0 或更高版本的 Google 移动广告中介插件(推荐使用最新版本
  • 在 Android 上部署
    • Android API 级别 19 或更高级别
  • 在 iOS 上部署
    • iOS 部署目标为 12.0 或更高版本
  • 配置了 Google 移动广告 SDK 且处于有效状态的 Unity 项目。如需了解详情,请参阅使用入门
  • 完成中介 入门指南

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

注册登录您的 Tapjoy 信息中心。

添加应用

前往右上角的应用列表,然后点击 Add App(添加应用)按钮,将您的应用添加到 Tapjoy 信息中心。然后,系统会提示您输入应用的详细信息。

填写表单,然后点击 Create Now 按钮,将您的应用添加到 Tapjoy 信息中心。

您可以跳过 Tapjoy 提供的集成步骤,直接创建可与中介结合使用的展示位置。 Ad Manager

如果您的应用同时支持这两种平台,请选择两者作为平台。

Android

iOS

展示位置、虚拟货币和内容

展示位置

依次前往创收 > 展示位置,然后点击右上角的创建展示位置按钮。即使您已有展示位置,也最好为 Ad Manager 创建一个新展示位置,以便单独进行跟踪和报告。

为展示位置输入名称,选中中介复选框,然后从下拉列表中选择 AdMob。完成后,点击创建

在下一部分中,系统将使用在此输入的展示位置名称为中介设置Ad Manager 广告单元。此示例中使用了“Ad Manager 中介”,但您可以随意调用展示位置。

虚拟货币

依次前往创收 > 虚拟货币,然后点击右上角的创建虚拟货币按钮。

填写表单,然后点击立即创建。使用 NO_CALLBACK 作为回调网址。这样可以确保 Tapjoy SDK 避免对服务器进行不必要的调用。

货币值和名称不会通过 Tapjoy 适配器转发,因此您可以选择货币名称和金额的任何通用值。

Android

iOS

内容

依次前往创收 > 创建内容,创建与展示位置一起展示的内容。

如需了解有关创建内容的更多说明,请选择与首选广告格式对应的标签页:

出价

插页式广告

点击程序化插页式视频广告内容对应的 Create 按钮。 为内容提供名称,然后选择您的平台。 * {Android} * {iOS} 选择之前创建的虚拟货币作为虚拟货币 选择之前创建的插页式广告展示位置。完成后,点击底部的保存按钮以创建内容。

已奖励

点击程序化激励视频广告内容的创建按钮。 * {Android} * {iOS} 选择之前创建的虚拟货币作为虚拟货币 选择之前创建的激励广告展示位置。完成后,点击底部的保存按钮以创建内容。

瀑布

插页式广告

点击插页式视频广告内容对应的创建按钮。 为内容提供名称,然后选择您的平台。 * {Android} * {iOS} 选择之前创建的虚拟货币作为虚拟货币 选择之前创建的插页式广告展示位置。完成后,点击底部的保存按钮以创建内容。

已奖励

点击激励视频广告内容对应的创建按钮。 为内容提供名称,然后选择您的平台。 * {Android} * {iOS} 选择之前创建的虚拟货币作为虚拟货币 选择之前创建的激励广告展示位置。完成后,点击底部的保存按钮以创建内容。

查找 SDK 密钥

除了展示位置名称之外,您还需要 SDK 密钥才能设置广告单元 Ad Manager 。

依次转到设置 > 应用设置。您可以从应用平台标签页下的应用信息中获取 SDK 密钥

Android

iOS

找到报告键

出价

出价集成不需要执行此步骤。

瀑布

您需要有发布商 OAuth 密钥中介密钥才能继续操作。您的发布商 OAuth 密钥可以在同一页面的 API 密钥标签页下获取。

在同一页面中,您可以在报告 API 密钥列下的中介密钥标签页下获取中介密钥。该密钥带有“AdMob”标签。 尽管名称不匹配,Google Ad Manager 发布商仍应使用此值。

开启测试模式

您可以在 Tapjoy 信息中心通过 Settings > App Settings > Test Devices 启用测试广告。使用设备的广告 ID 创建一个新的测试设备:

Android

可在设备设置中依次转到 Google > 广告,找到设备的广告 ID

iOS

要获取您设备的广告 ID,请将以下代码添加到您的应用中。请务必先将 AdSupport 框架导入您的应用,然后再使用下面的代码。

Swift

let advertisingId: String = ASIdentifierManager.shared().advertisingIdentifier.uuidString
print("Advertising ID: \(advertisingId)")

Objective-C

NSString *advertisingId = [[[ASIdentifierManager sharedManager] advertisingIdentifier] UUIDString];
NSLog(@"Advertising ID: %@", advertisingId);

接下来,修改您之前创建的内容。

如需修改您的内容,请先依次转到创收 > 展示位置,然后点击用户发起标签页。接下来,选择要修改的内容的下拉菜单,然后选择修改

在内容的 Basic 部分下,选中 Only for Test Devices 复选框。然后,点击页面底部的保存。大功告成!现在,您已与 Tapjoy 有效集成了中介。

Android

iOS

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

为广告单元配置中介设置

Android

如需了解相关说明,请参阅 Android

iOS

如需了解相关说明,请参阅 iOS 版。

添加到 GDPR 和美国州级法规的广告合作伙伴列表中 Tapjoy

按照 GDPR 设置美国州级法规设置 中的步骤,将 Tapjoy 添加到 Ad Manager 界面中的 GDPR 和美国州级法规广告合作伙伴列表中。

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

通过更新日志中的下载链接下载适用于 Tapjoy 的最新版 Google 移动广告中介插件,并从 zip 文件中提取 GoogleMobileAdsTapjoyMediation.unitypackage

在 Unity 项目编辑器中,依次选择 Assets > Import Package > Custom Package,然后选择您下载的 GoogleMobileAdsTapjoyMediation.unitypackage 文件。确保选择所有文件,然后点击 Import

然后,依次选择 Assets > Play Services Resolver > Android Resolver > Force Resolve。Unity Play 服务解析器库将从头开始执行依赖项解析,并将声明的依赖项复制到 Unity 应用的 Assets/Plugins/Android 目录中。

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

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

适用于 Tapjoy 1.1.1 版的 Google 移动广告中介插件包含 SetUserConsent()SubjectToGDPR() 方法。以下示例代码展示了如何将用户意见征求信息传递给 Tapjoy SDK。如果您选择调用此方法,请在通过 Google 移动广告 SDK 请求广告之前调用。

using GoogleMobileAds.Api.Mediation.Tapjoy;
// ...

Tapjoy.SetUserConsent("myUserConsent");

此外,您可以设置一个可选标志,以指明用户是否需要遵守 GDPR。

Tapjoy.SubjectToGDPR(true);

如需了解详情以及可通过该方法提供的值,请参阅 Tapjoy 的用户隐私指南。

美国州级隐私保护法律

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

适用于 Tapjoy 2.9.1 版的 Google 移动广告中介插件包含 SetUSPrivacy() 方法。以下示例代码展示了如何将用户意见征求信息传递给 Tapjoy SDK。如果您选择调用此方法,请在通过 Google 移动广告 SDK 请求广告之前调用。

using GoogleMobileAds.Api.Mediation.Tapjoy;
// ...

Tapjoy.SetUSPrivacy("myUSPrivacyString");

如需了解详情以及可通过该方法提供的值,请参阅 Tapjoy 的用户隐私指南。

第 5 步:添加所需的代码:

Android

Tapjoy 集成无需其他代码。

iOS

SKAdNetwork 集成

按照 Tapjoy 的文档操作,将 SKAdNetwork 标识符添加到项目的 Info.plist 文件中。

第 6 步:测试实现效果

启用测试广告

请务必为Ad Manager 注册您的测试设备,并在 Tapjoy 界面中启用测试模式

验证测试广告

如需验证您收到的是来自Tapjoy的测试广告,请使用相应广告来源在广告检查器中启用单一广告来源测试Tapjoy (Bidding) and Tapjoy (Waterfall)

可选步骤

Android

权限

为了获得最佳性能,Tapjoy 建议将以下可选权限添加到应用的 AndroidManifest.xml 文件中。修改位于 Assets/Plugins/Android/GoogleMobileAdsTapjoyMediation 文件夹下的 AndroidManifest.xml 文件,并添加以下可选权限:

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

iOS

无需执行额外的步骤即可进行 iOS 集成。

错误代码

如果适配器无法从 Tapjoy 接收广告,发布商可以使用以下类下的 ResponseInfo 检查广告响应的底层错误:

Android

形式 类名称
插页式广告 TapjoyAdapter
已奖励 TapjoyMediationAdapter

iOS

形式 类名称
插页式广告 GADMAdapterTapjoy
已奖励 GADMAdapterTapjoy

以下是广告加载失败时 Tapjoy 适配器抛出的代码及相应消息:

Android

错误代码 原因
101 在界面中配置的 Ad Manager 服务器参数缺失/无效。
103 发布商必须在 Activity 上下文中请求广告。
104 Tapjoy SDK 未能初始化。
105 视频播放期间发生了 Tapjoy 演示错误。
106 Tapjoy SDK 无法同时为同一展示位置 ID 加载两个广告。
107 应用未请求投放原生广告。
108 Tapjoy SDK 没有可用广告内容。

iOS

错误代码 原因
101 在界面中配置的 Ad Manager 服务器参数缺失/无效。
102 Tapjoy SDK 未能初始化。
103 Tapjoy 适配器不支持所请求的广告格式。
104 Tapjoy 发送了一个成功的加载回调,但没有可用的内容。
105 已针对此网络配置加载了一个广告。
106 Tapjoy SDK 返回了视频失败错误回调。

Tapjoy Unity 中介插件更新日志

版本 3.2.0

版本 3.1.1

版本 3.1.0

版本 3.0.0

版本 2.10.1

版本 2.10.0

版本 2.9.1

版本 2.9.0

版本 2.8.2

版本 2.8.1

版本 2.8.0

版本 2.7.1

版本 2.7.0

版本 2.6.1

版本 2.6.0

版本 2.5.1

版本 2.5.0

版本 2.4.2

版本 2.4.1

版本 2.4.0

版本 2.3.1

版本 2.3.0

  • 支持 Tapjoy Android 适配器版本 12.3.1.0。
  • 支持 Tapjoy iOS 适配器版本 12.3.1.0。

版本 2.2.0

  • 更新了插件以支持新的激励广告 API。
  • 支持 Tapjoy Android 适配器版本 12.2.1.0。
  • 支持 Tapjoy iOS 适配器版本 12.2.1.0。

版本 2.1.0

  • 支持 Tapjoy Android 适配器版本 12.2.0.0。
  • 支持 Tapjoy iOS 适配器版本 12.1.0.0。

版本 2.0.1

  • 支持 Tapjoy Android 适配器版本 12.0.0.1。
  • 支持 Tapjoy iOS 适配器版本 12.0.0.0。

版本 2.0.0

  • 支持 Tapjoy Android 适配器版本 12.0.0.0。
  • 支持 Tapjoy iOS 适配器版本 12.0.0.0。

版本 1.1.1

  • 支持 Tapjoy Android SDK 版本 11.12.2。
  • 支持 Tapjoy iOS SDK 版本 11.12.2。
  • 添加了 Tapjoy.SetUserConsent() 方法,用于将用户的同意情况以用户意见征求字符串的形式转发到 Tapjoy SDK。
  • 添加了 Tapjoy.SubjectToGDPR() 方法,用于指明 GDPR 是否适用于用户。

版本 1.1.0

  • 支持 Tapjoy Android SDK 版本 11.12.1。
  • 支持 Tapjoy iOS SDK 版本 11.12.1。

版本 1.0.0

  • 首个版本!
  • 支持 Tapjoy Android SDK 版本 11.11.1。
  • 支持 Tapjoy iOS SDK 版本 11.11.1。