将 AppLovin 与中介集成

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

支持的集成和广告格式

适用于 AppLovin 的 AdMob 中介适配器具有以下功能:

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

只有中介功能支持横幅广告(不包括 MREC 横幅广告)。出价功能不支持任何类型的横幅广告。

要求

  • 最新版 Google 移动广告 SDK
  • Flutter 3.7.0 或更高版本
  • 如需在 Android 上部署,请执行以下操作:
    • Android API 级别 21 或更高级别
  • 要在 iOS 上部署,需具备以下条件:
    • iOS 部署目标为 12.0 或更高版本
  • 使用 Google 移动广告 SDK 配置的正常运行的 Flutter 项目。如需了解详情,请参阅开始使用
  • 完成中介入门指南

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

注册登录您的 AppLovin 账号。

如需设置 AdMob 广告单元,您需要 AppLovin SDK 密钥报告密钥。如需查找它们,请依次前往 AppLovin 界面 > 账号 > 密钥,查看这两个值。

如果您只打算集成出价功能,可以继续配置中介设置

选择要中介的应用

出价

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

瀑布

在 AppLovin 界面中,选择 Monetize(创收)部分下的 Applications(应用),前往已注册的应用。从可用应用列表中选择要与中介搭配使用的应用。

创建区域

出价

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

瀑布

在 AppLovin 界面中,选择创收部分下的可用区,即可找到您已注册的可用区 ID。如果您已为应用创建所需的区域,请直接跳至第 2 步。如需创建新的区域 ID,请点击创建区域

输入区域 ID 的名称,选择 Android 作为平台,然后选择广告类型

选择固定 CPM由 AppLovin 优化,为相应区域配置定价。对于固定每千次展示费用选项,您可以按国家/地区配置每千次展示费用。然后,点击保存

Android

iOS

创建可用区后,您可以在 Zone ID 列下找到可用区 ID。

Android

iOS

开启测试模式

按照 AppLovin 的 MAX 测试模式指南中的说明,了解如何启用 AppLovin 测试广告。

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

为广告单元配置中介设置

Android

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

iOS

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

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

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

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

通过 pub.dev 集成

在软件包的 pubspec.yaml 文件中添加以下依赖项,其中包含最新版本的 Applovin SDK 和适配器:

dependencies:
  gma_mediation_applovin: ^1.0.0

手动集成

下载适用于 Applovin 的最新版 Google 移动广告中介插件,解压缩下载的文件,然后将解压缩的插件文件夹及其内容添加到您的 Flutter 项目中。然后,通过添加以下依赖项在 pubspec.yaml 文件中引用该插件:

dependencies:
  gma_mediation_applovin:
    path: path/to/local/package

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

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

AppLovin 支持从共享偏好设置中读取意见征求字符串,并相应地设置意见征求状态。

如果您使用的 CMP 未将意见征求字符串写入共享偏好设置,则可以使用 GmaMediationApplovin.setHasUserConsent()GmaMediationApplovin.setIsAgeRestrictedUser() 方法。以下示例代码展示了如何将意见征求信息传递给 AppLovin SDK。您必须先设置这些选项,然后再初始化 Google 移动广告 SDK,以确保这些选项正确转发到 AppLovin SDK。

import 'package:gma_mediation_applovin/gma_mediation_applovin.dart';
// ...

GmaMediationApplovin.setHasUserConsent(true);
GmaMediationApplovin.setIsAgeRestrictedUser(true);

如需了解详情,请参阅 AppLovin 的隐私设置

美国州级隐私保护法律

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

适用于 AppLovin 的 Google 移动广告中介插件包含 GmaMediationApplovin.setDoNotSell() 方法。以下示例代码展示了如何将意见征求信息传递给 AppLovin SDK。您必须先设置这些选项,然后再初始化 Google 移动广告 SDK,以确保这些选项能够正确转发到 AppLovin SDK。

import 'package:gma_mediation_applovin/gma_mediation_applovin.dart';
// ...

GmaMediationApplovin.setDoNotSell(true);

如需了解详情,请参阅 AppLovin 的隐私权文档

第 5 步:添加所需代码

Android

集成 AppLovin 不需要任何其他代码。

iOS

SKAdNetwork 集成

按照 AppLovin 文档中的说明,将 SKAdNetwork 标识符添加到项目的 Info.plist 文件中。

第 6 步:测试您的实现

启用测试广告

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

验证测试广告

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

可选步骤

特定于广告联盟的参数

AppLovin 适配器支持将 AppLovinMediationExtras 对象传递给广告请求,以设置特定于广告联盟的参数。以下示例代码展示了如何使用 isMuted 参数停用视频广告的音频:

AppLovinMediationExtras applovinExtras = AppLovinMediationExtras(isMuted: true)

AdRequest request = AdRequest(
    keywords: <String>['foo', 'bar'],
    contentUrl: 'http://foo.com/bar.html',
    mediationExtras: [applovinExtras],
);

优化

将对 GmaMediationApplovin.initializeSdk('sdkKey') 的调用添加到启动 activity 可让 AppLovin 在应用启动后立即跟踪事件。

错误代码

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

Android

com.google.ads.mediation.applovin.mediation.ApplovinAdapter
com.google.ads.mediation.applovin.AppLovinMediationAdapter

iOS

GADMAdapterAppLovin
GADMAdapterAppLovinRewardBasedVideoAd
GADMediationAdapterAppLovin

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

Android

错误代码 原因
-1009 到 -1, 204 AppLovin SDK 返回了错误。如需了解详情,请参阅 AppLovin 文档
101 请求的广告尺寸与 AppLovin 支持的横幅广告尺寸不符。
103 上下文为 null。
104 AppLovin 出价令牌为空。
105 为同一区域请求了多个广告。AppLovin 每个区域一次只能加载 1 个广告。
106 广告尚未准备好展示。
108 AppLovin 适配器不支持请求的广告格式。

iOS

错误代码 原因
-1009 到 -1, 204 AppLovin SDK 返回了错误。如需了解详情,请参阅 AppLovin 的文档
101 请求的广告尺寸与 AppLovin 支持的横幅广告尺寸不符。
102 在 AdMob 界面中配置的 AppLovin 服务器参数缺失/无效。
103 未能显示 AppLovin 广告。
104 为同一区域请求了多个广告。AppLovin 每个区域一次只能加载 1 个广告。
105 未找到 AppLovin SDK 密钥。
107 出价令牌为空。
108 AppLovin 适配器不支持请求的广告格式。
110 AppLovin 发送了成功加载回调,但未加载任何广告。
111 无法检索 AppLovin SDK 的实例。
112 用户是一名儿童。

AppLovin Flutter 中介适配器变更日志

下一版本

  • 使用 Google 移动广告 Flutter 插件 5.2.0 版构建和测试。

1.2.0

  • 已经验证与 AppLovin Android 适配器版本 12.6.1.0 兼容。
  • 已经验证与 AppLovin iOS 适配器版本 12.6.1.0 兼容。
  • 使用 Google 移动广告 Flutter 插件 5.1.0 版构建和测试。

1.1.0

  • GmaMediationApplovin 的 API 不再是静态的。
  • 已经验证与 AppLovin Android 适配器版本 12.4.3.0 兼容。
  • 已验证与 AppLovin iOS 适配器版本 12.4.2.0 的兼容性。
  • 使用 Google 移动广告 Flutter 插件 5.1.0 版构建和测试。

1.0.0

  • 初始版本。
  • 已验证与 AppLovin Android 适配器版本 12.3.0.0 的兼容性
  • 已经验证与 AppLovin iOS 适配器版本 12.2.1.0 兼容
  • 使用 Google 移动广告 Flutter 插件 5.0.0 版构建和测试。