将 ironSource 广告与中介集成

本指南介绍了如何使用 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 帐号。

如需将应用添加到 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

为广告单元配置中介设置

Android

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

iOS

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

将 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 上实现隐私设置

根据 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 的关于针对 AndroidiOS 的监管高级设置的文档。

第 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 版进行构建和测试。