本指南介绍了如何使用 Google 移动广告 SDK 通过中介加载和展示来自 ironSource 的广告,涵盖广告瀑布流集成。其中介绍了如何将 ironSource 广告添加到广告单元的中介配置中,以及如何将 ironSource Ads SDK 和适配器集成到 Flutter 应用中。
支持的集成和广告格式
ironSource Ads 的 AdMob 中介适配器具有以下功能:
集成 | ||
---|---|---|
出价 | 1 | |
瀑布 | ||
表现形式 | ||
横幅 | 2 | |
插页式广告 | ||
已奖励 | ||
插页式激励广告 | 2 |
1 出价集成功能目前处于封闭式 Beta 版测试阶段,如需申请访问权限,请与您的客户经理联系。
2 只有广告瀑布流集成支持此格式。
要求
- 最新版 Google 移动广告 SDK
- Flutter 3.7.0 或更高版本
- 在 Android 上部署
- Android API 级别 21 或更高级别
- 在 iOS 上部署
- iOS 部署目标为 12.0 或更高版本
- 使用 Google 移动广告 SDK 配置的有效 Flutter 项目。如需了解详情,请参阅开始使用。
- 看完中介服务入门指南
第 1 步:在 ironSource 广告界面中设置配置
如需将应用添加到 ironSource Ads 信息中心,请点击 New App 按钮。
输入应用详情
选择 Live App,输入应用的 网址,然后点击 Import App Info。
如果您的应用不可用,请选择 App Not Live in the App Store 并为您的应用提供一个临时名称。选择您的平台。
填写表单的其余部分,然后点击添加应用。
记下新的应用密钥,此密钥会在添加应用后显示。在设置广告单元 ID 时,您需要使用此值。AdMob 选择您的应用支持的广告格式。然后点击继续。
Android
iOS
创建实例
接下来,为您添加的应用配置网络实例。
出价
依次前往 LevelPlay > 设置 > SDK 广告联盟,然后选择您的应用。在出价下,点击“修改”图标以查看出价实例 ID。
Android
iOS
记下实例 ID。
Android
iOS
瀑布
依次前往广告 > 设置 > 实例。选择该应用,然后点击创建实例。
输入必要的详细信息,然后点击保存并关闭。
创建实例后,实例 ID 字段中会列出实例 ID。
找到您的 Reporting API 密钥
出价
出价集成不需要执行此步骤。
瀑布
除了应用密钥和实例 ID 之外,您还需要 ironSource Ads 密钥和刷新令牌来设置您的AdMob 广告单元 ID。
在 ironSource Ads 发布商信息中心内前往我的帐号,然后点击 API 标签页。记下您的密钥和刷新令牌。
开启测试模式
请按照 ironSource Ads 的集成测试指南中的说明启用 ironSource Ads 测试广告。
第 2 步:在界面中设置 ironSource 广告需求 AdMob
为广告单元配置中介设置
将 ironSource Mobile 添加到 GDPR 和美国州级法规广告合作伙伴列表
按照 GDPR 设置 和 美国州级法规设置 中的步骤,将 ironSource Mobile 添加到 AdMob 界面中的 GDPR 和美国州级法规广告合作伙伴列表中。
第 3 步:导入 ironSource Ads SDK 和适配器
通过 pub.dev 进行集成
(仅限 Android)将以下代码库添加到项目的 android
目录内的 build.gradle
文件中:
repositories {
google()
mavenCentral()
maven {
url = uri("https://android-sdk.is.com/")
}
}
在软件包的 pubspec.yaml
文件中,添加以下依赖项以及最新版本的
IronSource
SDK 和适配器:
dependencies:
gma_mediation_ironsource: ^1.0.0
手动集成
为
IronSource
下载最新版本的 Google 移动广告中介插件,提取下载的文件,然后将提取的插件文件夹(及其内容)添加到您的 Flutter 项目中。然后,通过添加以下依赖项,在 pubspec.yaml
文件中引用该插件:
dependencies:
gma_mediation_ironsource:
path: path/to/local/package
第 4 步:在 ironSource 广告 SDK 上实现隐私设置
欧盟地区用户意见征求和 GDPR
根据 Google 欧盟地区用户意见征求政策,您必须确保就设备标识符和个人数据的使用向欧洲经济区 (EEA) 内的用户披露特定信息,并征得其同意。此政策反映了欧盟《电子隐私指令》和《一般数据保护条例》(GDPR) 的要求。在征求用户意见时,您必须指明中介链中可能会收集、接收或使用个人数据的每个广告联盟,并提供有关每个广告联盟使用情况的信息。Google 目前无法将用户意见征求结果自动传递给此类广告联盟。
ironSource Ads 的 Google 移动广告中介插件包含
GmaMediationIronsource().SetConsent()
方法。以下示例代码展示了如何将意见征求信息传递给 ironSource Ads SDK。如果您选择调用此方法,建议您在通过 Google 移动广告 SDK 请求广告之前执行此操作。
import 'package:gma_mediation_ironsource/gma_mediation_ironsource.dart';
// ...
GmaMediationIronsource().setConsent(true);
如需了解详情,请参阅关于法规高级设置的 ironSource Ads 文档。
美国州级隐私保护法律
美国州级隐私保护法律 规定,用户有权选择不“出售”其“个人信息”(该法律对这些术语进行了定义),“出售”方首页上醒目的“请勿出售我的个人信息”链接提供该拒绝选项。根据美国州级隐私保护法律合规性指南,您可以为 Google 广告投放启用受限的数据处理,但 Google 无法将此设置应用于中介链中的每个广告联盟。因此,您必须找出中介链中可能参与出售个人信息的每个广告联盟,并按照每个广告联盟的指导来确保遵守该政策。
ironSource Ads 的 Google 移动广告中介插件包含
GmaMediationIronsource().setDoNotSell
方法。以下示例代码展示了如何将意见征求信息传递给 ironSource Ads SDK。您必须在初始化 Google 移动广告 SDK 之前设置这些选项,以确保它们正确转发到 ironSource Ads SDK。
import 'package:gma_mediation_ironsource/gma_mediation_ironsource.dart';
// ...
GmaMediationIronsource().setDoNotSell(true);
如需了解详情以及可以在该方法中提供的值,请参阅 ironSource Ads 的关于针对 Android 和 iOS 的监管高级设置的文档。
第 5 步:添加所需的代码
Android
Proguard 规则
如果您压缩、混淆和优化应用,IronSource Ads 需要为您的项目提供额外的 ProGuard 规则。
请参阅 IronSource Ads 的 Android SDK 集成指南,详细了解您的项目所需的 ProGuard 规则,并将这些规则添加到 proguard-user.txt
文件中。
应用生命周期
替换每个 activity 中的 onPause()
和 onResume()
方法以调用相应的 ironSource Ads 方法,如下所示:
Java
@Override
public void onResume() {
super.onResume();
IronSource.onResume(this);
}
@Override
public void onPause() {
super.onPause();
IronSource.onPause(this);
}
Kotlin
public override fun onResume() {
super.onResume()
IronSource.onResume(this)
}
public override fun onPause() {
super.onPause()
IronSource.onPause(this)
}
iOS
SKAdNetwork 集成
按照 ironSource Ads 文档中的说明,将 SKAdNetwork 标识符添加到项目的 Info.plist
文件中。
第 6 步:测试实现效果
启用测试广告
请务必为AdMob 注册您的测试设备,并在 IronSource 界面中启用测试模式。
验证测试广告
如需验证您收到的是来自 IronSource 的测试广告,请使用相应广告来源在广告检查器中启用单一广告来源测试。 ironSource Ads (Waterfall)
错误代码
如果适配器未能从 ironSource Ads 收到广告,发布商可以使用以下类下的 ResponseInfo
检查广告响应中的潜在错误:
Android
com.google.ads.mediation.ironsource.IronSourceAdapter
com.google.ads.mediation.ironsource.IronSourceRewardedAdapter
iOS
GADMAdapterIronSource
GADMAdapterIronSourceRewarded
当广告加载失败时,以下是 ironSource 广告适配器抛出的代码及其附带消息:
Android
错误代码 | 原因 |
---|---|
101 | 界面中配置的 ironSource 广告服务器参数 AdMob 缺失/无效。 |
102 | ironSource Ads 需要一个 Activity 上下文来初始化其 SDK。 |
103 | ironSource Ads 只能为每个 ironSource 实例 ID 加载 1 个广告。 |
105 | ironSource Ads 不支持请求的横幅广告尺寸。 |
106 | ironSource Ads SDK 未初始化。 |
501-1056 | ironSource 广告 SDK 错误。如需详细了解,请参阅文档。 |
iOS
错误代码 | 原因 |
---|---|
101 | 界面中配置的 ironSource 广告服务器参数 AdMob 缺失/无效。 |
102 | ironSource 广告适配器不支持所请求的广告格式。 |
103 | 已针对此广告联盟配置加载了一个 ironSource 广告。 |
104 | ironSource Ads 不支持请求的横幅广告尺寸。 |
508-1037 | ironSource 广告 SDK 错误。如需详细了解,请参阅文档。 |
ironSource Flutter 中介适配器更新日志
1.0.0
- 初始版本。
- 已验证与 ironSource Android 适配器版本 8.0.0.0 的兼容性
- 已验证与 ironSource iOS 适配器版本 8.0.0.0.0 的兼容性
- 使用 Google 移动广告 Flutter 插件 5.1.0 版进行构建和测试。