将 Meta Audience Network 与出价集成

本指南介绍了如何使用 GMA Next-Gen SDK 通过 AdMob 中介加载和展示来自 Meta Audience Network 的广告(内容涵盖出价集成)。如何将 Meta Audience Network 添加到广告单元的中介配置,以及如何将 Meta Audience Network SDK 和适配器集成到 Android 应用中。

支持的集成和广告格式

Meta Audience Network 的中介适配器具有以下功能:

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

1 Meta Audience Network 于 2021 年 开始仅支持出价
2 Meta Audience Network 不支持锚定型自适应横幅广告和内嵌型自适应横幅广告。

要求

  • GMA Next-Gen SDK”的最新视频。

  • 完成中介入门指南

  • Android API 级别 24 或更高级别

第 1 步:在 Meta Audience Network 界面中设置配置

注册并登录商家管理工具起始页

依次点击开始创建新账号

填写必填字段,提供您的商家详情,然后点击下一步

创建媒体资源

填写完所需信息后,系统会提示您为应用创建媒体资源。输入所需的应用媒体资源名称,然后点击下一步

接下来,选择要创收的平台。

添加应用详细信息,然后点击下一步

点击添加新的收款账号,设置收款账号。系统会将您重定向到一个新页面,您可在其中输入付款信息。填写必要的详细信息,然后点击下一步

选择 Google AdMob 作为中介平台,然后点击创建展示位置

选择格式,填写表单,然后点击创建

记下展示位置 ID

点击完成

更新 app-ads.txt

应用授权卖方 (app-ads.txt) 是一项 IAB Tech Lab 计划,有助于确保只通过您认定的授权渠道销售您的应用广告资源。为避免损失大量广告收入,您需要实施 app-ads.txt 文件。 如果您尚未完成此项设置,请为您的应用设置 app-ads.txt 文件

如需为 Meta Audience Network 实现 app-ads.txt,请参阅使用 app-ads.txt 标识授权卖方

启用测试模式

如需详细了解如何启用 Meta Audience Network 测试广告,请参阅测试 Audience Network 实现指南

第 2 步:在 AdMob 界面中设置 Meta Audience Network 需求

为广告单元配置中介设置

您需要将 Meta Audience Network 添加到广告单元的中介配置。

首先,登录您的 AdMob 账号。接下来,前往中介标签页。如果您要修改某个现有中介组,请点击该中介组的名称进行修改,然后跳至将 Meta Audience Network 添加为广告来源

若要创建新中介组,请选择创建中介组

输入广告格式和平台,然后点击继续

为中介组命名,然后选择要定位到的地理位置。接下来,将中介组状态设置为已启用,然后点击添加广告单元

将此中介组与您的一个或多个现有 AdMob 广告单元相关联。然后,点击完成

现在,您应该会看到“广告单元”卡片中填充了您选择的广告单元:

将 Meta Audience Network 添加为广告来源


出价卡片的广告来源部分,选择添加广告来源。然后选择 Meta Audience Network

点击如何签署合作伙伴协议,然后与 Meta Audience Network 建立出价合作伙伴关系



点击确认并同意,然后点击继续



如果您已为 Meta Audience Network 创建映射,可以选择该映射。否则,请点击添加映射



接下来,输入在上一部分获得的展示位置 ID。然后点击完成

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

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

第 3 步:导入 Meta Audience Network SDK 和适配器

在应用级 Gradle 文件中,添加以下实现依赖项和配置:

Kotlin

dependencies {
    implementation("com.google.android.libraries.ads.mobile.sdk:ads-mobile-sdk:0.24.0-beta02")
    implementation("com.google.ads.mediation:facebook:6.21.0.1")
}

configurations.configureEach {
    exclude(group = "com.google.android.gms", module = "play-services-ads")
    exclude(group = "com.google.android.gms", module = "play-services-ads-lite")
}

Groovy

dependencies {
    implementation 'com.google.android.libraries.ads.mobile.sdk:ads-mobile-sdk:0.24.0-beta02'
    implementation 'com.google.ads.mediation:facebook:6.21.0.1'
}

configurations.configureEach {
    exclude group: 'com.google.android.gms', module: 'play-services-ads'
    exclude group: 'com.google.android.gms', module: 'play-services-ads-lite'
}

手动集成

第 4 步:在 Meta Audience Network SDK 上实现隐私设置

为了遵守 Google 的《欧盟地区用户意见征求政策》,您必须向欧洲经济区 (EEA)、英国和瑞士的用户披露某些信息,并征得他们同意才能使用 Cookie 或其他本地存储(如果法律有此要求),以及收集、分享和使用个人数据以实现广告个性化。此政策反映了欧盟《电子隐私指令》和《一般数据保护条例》(GDPR) 的要求。您要负责验证用户意见是否已传播到中介链中的每个广告来源。Google 无法自动将用户意见传递给此类广告资源网。

Meta 未在 IAB Europe 全球供应商列表 (GVL) 中注册。 您必须改用额外同意模式技术规范。如需了解详情,请参阅附加同意的组成部分。 “更多意见征求”规范可与 IAB Europe 透明度和用户意见征求框架 (TCF) 第 2 版搭配使用。此规范可让您以及您的意见征求管理平台 (CMP) 和合作伙伴收集并传输 Google 广告技术提供商 (ATP) 列表中所列但尚未加入 IAB Europe GVL 的公司的补充意见征求信号。

请遵循 Meta 文档中有关 GDPR 和 Meta 广告的指南。

美国州级隐私保护法律

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

请按照 Meta 的文档中的指南,为加利福尼亚州的用户设置数据处理选项。

第 5 步:添加必需的代码

集成 Meta 受众群体网络无需额外代码。

第 6 步:测试您的实现

启用测试广告

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

验证测试广告

若要验证您是否能收到来自 Meta Audience Network 的测试广告,请在广告检查器中启用 single ad source testing(单个广告来源测试),并选择 Meta Audience Network (Bidding)(Meta Audience Network [出价])作为广告来源。

可选步骤

原生广告

部分 Meta Audience Network 原生广告素材资源无法与 Google 原生广告素材资源一一对应。此类素材资源会通过 NativeAd 中的 getExtras() 方法以 bundle 形式传递回发布商。该适配器支持传递以下素材资源:

请求参数和值
FacebookMediationAdapter.KEY_ID 字符串。原生广告的唯一 ID
FacebookMediationAdapter.KEY_SOCIAL_CONTEXT_ASSET 字符串。广告的社交背景

以下代码示例展示了如何提取这些资源:

示例:

Kotlin

val extras = nativeAd.getExtras()
if (extras.containsKey(FacebookMediationAdapter.KEY_SOCIAL_CONTEXT_ASSET)) {
  var socialContext = extras.getString(FacebookMediationAdapter.KEY_SOCIAL_CONTEXT_ASSET)
  // ...
}

Java

Bundle extras = nativeAd.getExtras();
if (extras.containsKey(FacebookMediationAdapter.KEY_SOCIAL_CONTEXT_ASSET)) {
    String socialContext = extras.getString(FacebookMediationAdapter.KEY_SOCIAL_CONTEXT_ASSET);
    // ...
}

使用不含 MediaView 的 Meta Audience Network 原生广告

Meta Audience Network 的原生广告格式需要呈现 MediaView 资源。如果您打算在不使用该素材资源的情况下呈现原生广告,请务必使用 Meta Audience Network 的原生横幅广告格式。

如需改用 Meta Audience Network 的原生横幅广告,您必须在设置 Meta Audience Network 时选择 Native Banner 格式,然后适配器会自动加载相应的原生广告格式。

广告呈现

Audience Network 适配器以 NativeAd 对象的形式返回其原生广告。它会为 NativeAd 填充以下原生广告字段说明

字段 由 Meta Audience Network 适配器填充
标题
图片 1
正文
应用图标
号召性用语
广告客户名称
星级
商店
价格

1 Meta Audience Network 适配器无法直接访问其原生广告的主要图片素材资源。而是使用视频或图片填充 MediaView

展示和点击跟踪

下表重点介绍了 GMA Next-Gen SDK 何时记录原生广告的展示次数和点击次数。

展示记录 点击“录制”
屏幕上 Meta Audience Network 原生广告素材资源的像素数 + 素材资源呈现要求 Meta Audience Network SDK 回调

Meta Audience Network 对素材资源呈现有具体要求,只有符合这些要求,展示才会被视为有效。具体要求取决于您在设置 Meta Audience Network 时选择的是原生还是原生横幅格式。

Meta Audience Network 原生广告格式 必需的素材资源 必需的渲染类
原生 媒体视图 MediaView
原生横幅广告 应用图标 ImageView

Android 9 中的缓存

从 Android 9(API 级别 28)开始,系统默认情况下已停用明文支持,这将影响 Meta Audience Network SDK 的媒体缓存功能,并可能影响用户体验和广告收入。请按照 Meta 的文档更新应用中的网络安全配置。

错误代码

如果适配器未能收到来自 Audience Network 的广告,您可以使用 ResponseInfo.getAdSourceResponses() 来检查广告响应中归属于以下类的底层错误:

com.google.ads.mediation.facebook.FacebookAdapter
com.google.ads.mediation.facebook.FacebookMediationAdapter

以下是当广告加载失败时,Audience Network 适配器会抛出的代码和随附的消息:

错误代码 原因
101 服务器参数无效(例如,缺少展示位置 ID)。
102 所请求的广告尺寸与 Meta Audience Network 支持的横幅尺寸不一致。
103 发布商必须请求具有 Activity 上下文的广告。
104 Meta Audience Network SDK 初始化失败。
105 发布商未请求统一原生广告。
106 加载的原生广告与预期对象不同。
107 所用的 Context 对象无效。
108 加载的广告缺少必需的原生广告素材资源。
109 未能根据出价载荷创建原生广告。
110 Meta Audience Network SDK 未能展示其插页式广告/激励广告。
111 创建 Meta Audience Network AdView 对象时抛出的异常。
1000-9999 Meta Audience Network 返回了特定于 SDK 的错误。如需了解详情,请参阅 Meta Audience Network 的文档