在同一应用中使用 Facebook SDK 和 Singular SDK/S2S

在同一应用中使用 Facebook SDK 和 Singular SDK

在同一应用中同时实现 Facebook SDK 和 Singular SDK 的综合指南,涵盖配置要求、 数据准确性注意事项以及集成最佳实践。


集成概述

Singular 作为移动端测量合作伙伴

如果应用中已集成 Singular SDK,则无需 Facebook SDK 即可追踪 Facebook 归因或在 Facebook 平台上查看事件。作为 Facebook 认证的移动端测量合作伙伴(MMP),Singular SDK 可处理所有归因和事件追踪需求。

Singular MMP 功能:

  • 归因追踪: 自动追踪来自 Facebook 广告系列的安装和转化
  • 事件转发: 将应用内事件发送至 Facebook,用于广告系列优化
  • 数据报告: 提供跨所有渠道(包括 Facebook)的统一归因数据
  • 认证集成: 获得 Facebook 认可的测量方案,可完全访问 API

何时使用 Facebook SDK

有效使用场景

虽然 Singular SDK 负责归因和分析,但一些组织会集成 Facebook SDK,以使用测量之外的 Facebook 特定功能。

Facebook SDK 功能

社交功能

Facebook 登录

允许用户使用 Facebook 凭据进行身份验证,简化入门流程并减少注册摩擦。

Facebook 分享

允许用户将应用内容直接分享到 Facebook,扩大自然量覆盖范围并提升病毒式增长潜力。


高级广告功能

Facebook 移动应用安装广告

访问 Facebook 移动应用安装广告 的高级功能,包括:

  • 动态商品广告: 通过个性化商品推荐对用户进行再营销
  • Audience Network: 将广告系列扩展至 Facebook 平台以外的合作伙伴应用
  • Custom Audiences: 基于 Facebook 用户数据创建受众群体
  • 高级定向: 利用 Facebook 的详细定向选项

Facebook 平台集成

Graph API 访问

与 Facebook Graph API 集成,以便在 Facebook 社交图谱中读取和写入数据。

Messenger 集成

通过 Facebook Messenger 实现通信,用于客户支持或互动广告系列。

集成决策: 仅当您的应用需要归因和分析之外的特定 Facebook 平台功能时,才集成 Facebook SDK。 若仅用于测量目的,Singular SDK 可提供完整功能。


数据准确性注意事项

在同一应用中同时使用 Facebook SDK 和 Singular SDK 时,必须进行正确配置,以维护 数据准确性并防止数据差异。

常见数据问题

事件重复

如果没有正确配置,事件可能会被发送到 Facebook 两次(Facebook SDK 和 Singular SDK 各发送一次),从而导致事件计数虚高且报告不准确。

严重问题: 重复事件追踪会导致:

  • 事件计数虚高: Facebook 报告的事件数是实际数量的两倍,歪曲广告系列效果指标
  • 会话计数错误: Facebook 平台上的会话数据人为偏高
  • 广告系列优化问题: Facebook 算法接收到错误信号,影响广告系列优化
  • 预算分配问题: 不准确的数据影响各广告系列的预算分配

解决方案要求

配置策略

在同时使用两个 SDK 时要维护数据准确性,需要禁用 Facebook SDK 的自动事件记录, 并让 Singular SDK 处理所有向 Facebook 的测量和事件转发。

集成架构:

组件 职责 配置
Singular SDK
  • 处理所有归因追踪
  • 追踪应用内事件
  • 将事件转发至 Facebook
  • 提供统一分析

标准配置

无需特殊更改

Facebook SDK
  • 提供 Facebook 平台功能
  • 启用登录、分享等功能
  • 不发送事件
  • 不追踪归因

禁用自动记录

防止事件重复发送


实施步骤

按照以下步骤在维护数据准确性和防止事件重复的同时,将 Facebook SDK 与 Singular SDK 配合使用。

第 1 步:禁用 Facebook SDK 事件记录

特定平台配置

默认情况下,Facebook SDK 会自动将事件发送到 Facebook 平台。必须禁用此自动记录, 以防止事件重复追踪。

iOS - 禁用自动事件记录

配置方法

请遵循 iOS App Events 入门指南 中"禁用自动记录事件"部分的 Facebook 官方说明。


Info.plist 配置

在您的 Info.plist 文件中添加以下键,以禁用自动事件记录:

<key>FacebookAutoLogAppEventsEnabled</key>
<false/>

验证步骤

  1. 检查 Info.plist: 验证键是否已正确添加,且值设置为 false
  2. 测试构建: 构建并运行应用,确保配置已生效
  3. 监控事件: 使用 Facebook Analytics 控制面板验证 Facebook SDK 未发送事件

重要: 禁用自动记录后,Facebook SDK 将不会向 Facebook 发送任何事件。Singular SDK 将处理所有向 Facebook 平台的事件转发。

Android - 禁用自动事件记录

配置方法

请遵循 Android App Events 入门指南 中"禁用自动记录事件"部分的 Facebook 官方说明。


AndroidManifest.xml 配置

<application> 标签内的 AndroidManifest.xml 文件中添加以下Meta数据:

<application>
    ...
    <meta-data
        android:name="com.facebook.sdk.AutoLogAppEventsEnabled"
        android:value="false" />
    ...
</application>

替代方案:代码配置

或者,也可以在 Application 类中通过代码禁用自动记录:

JAVA KOTLIN
import com.facebook.FacebookSdk;
import com.facebook.appevents.AppEventsLogger;

public class MyApplication extends Application {
    @Override
    public void onCreate() {
        super.onCreate();

        // Disable automatic event logging
        FacebookSdk.setAutoLogAppEventsEnabled(false);
    }
}

验证步骤

  1. 检查 AndroidManifest: 验证Meta数据是否已正确添加,且值设置为 false
  2. 构建应用: 清除缓存并重新构建应用,确保配置已生效
  3. 监控事件: 使用 Facebook Analytics 控制面板验证 Facebook SDK 未发送事件

重要: 选择 AndroidManifest 配置或代码配置其中一种,不要同时使用两种方式。 建议使用 Manifest 配置以保持一致性。


第 2 步:配置 Facebook 归因

Singular 合作伙伴配置

禁用 Facebook SDK 事件记录后,按照标准设置流程在 Singular 平台中配置 Facebook 归因。

配置说明: 请按照 Facebook 广告归因集成 指南中的第 1-4 步完成 Facebook 归因配置。

配置检查清单:

  1. 添加 Facebook 应用 ID: 在 Singular 平台中,转到归因 → 合作伙伴配置,添加 Facebook 应用 ID
  2. 配置归因设置: 设置归因窗口和测量偏好
  3. 映射事件: 配置 Singular 和 Facebook 之间的事件映射
  4. 启用回传: 设置从 Singular 到 Facebook 的事件回传,用于广告系列优化

第 3 步:验证配置

测试流程

完成配置后,使用 Singular 和 Facebook 测试工具验证实施是否正确。

验证检查清单

Singular SDK 验证

  1. 测试控制台: 使用 Singular 测试控制台 验证事件是否被正确追踪
  2. 事件日志: 检查 Singular 导出日志,确认事件已记录
  3. 归因验证: 在 Singular 报告中验证 Facebook 安装是否被正确归因

Facebook 平台验证

  1. 事件管理器: 打开 Facebook 事件管理器,验证来自 Singular 的事件是否正常显示
  2. 事件计数对比: 对比 Singular 和 Facebook 之间的事件计数,确保无重复
  3. 会话追踪: 验证会话计数是否与预期值一致,无虚高情况

数据准确性检查

检查项 预期结果
事件计数 事件仅在 Facebook 中出现一次(来自 Singular),无重复
会话计数 Facebook 显示正常会话计数,无人为虚高
归因数据 Singular 报告显示带有正确广告系列数据的 Facebook 安装
Facebook 功能 Facebook 登录、分享及其他功能在应用中正常运行

验证时间: 初始设置后,请等待 24-48 小时,让数据在两个平台上正确流转。部分数据最初 可能会出现延迟。


故障排查

同时使用 Facebook SDK 和 Singular SDK 时的常见问题及解决方案。

常见问题

Facebook 中的事件重复

症状

  • Facebook 中的事件计数是预期值的两倍
  • 同一事件以相同时间戳多次出现
  • Facebook 广告系列优化受到虚高指标的影响

原因

Facebook SDK 自动事件记录未被禁用,导致 Facebook SDK 和 Singular SDK 都将 相同事件发送至 Facebook 平台。


解决方案

  1. 在 iOS 的 Info.plist 中验证 FacebookAutoLogAppEventsEnabled 已设置为 false
  2. 在 Android 的 AndroidManifest.xml 中验证 com.facebook.sdk.AutoLogAppEventsEnabled 已设置为 false
  3. 清除缓存并重新构建应用,确保配置已生效
  4. 监控 Facebook 事件管理器 24 小时,确认问题已解决
Singular 中缺少 Facebook 归因

症状

  • Singular 报告中未显示 Facebook 安装
  • 安装被归因为自然量而非 Facebook 广告系列
  • Singular 分析中缺少广告系列数据

原因

Facebook 未在 Singular 平台中配置为归因合作伙伴,或 Facebook 应用 ID 缺失 或不正确。


解决方案

  1. 转到 Singular → 归因 → 合作伙伴配置,搜索 Facebook
  2. 验证 Facebook 应用 ID 是否已正确输入
  3. 确认 Facebook 集成已启用并处于活跃状态
  4. 检查归因窗口设置是否符合广告系列要求
  5. 查阅 Facebook 广告归因集成 指南进行完整配置
Facebook 功能无法正常使用

症状

  • Facebook 登录失败或返回错误
  • Facebook 分享按钮无法正常使用
  • 应用中无法使用 Facebook SDK 功能

原因

尽管自动事件记录已被禁用,Facebook SDK 仍未正确初始化或配置。


解决方案

  1. 验证 Facebook SDK 在应用中是否已正确初始化(禁用自动记录不影响 SDK 初始化)
  2. 检查应用设置中的 Facebook 应用 ID 和配置
  3. 查阅 Facebook SDK 文档,了解特定功能的要求
  4. 独立测试 Facebook 功能,以隔离集成问题

注意: 禁用自动事件记录仅影响事件追踪,不影响登录和分享等 Facebook 平台功能。 这些功能应可继续正常使用。


其他资源

Facebook 和 Singular SDK 集成的完整文档。

文档链接

Singular 资源


Facebook 开发者资源


支持

获取帮助

如需有关 Facebook 和 Singular SDK 集成的更多帮助,请联系 Singular 支持团队或 咨询您的客户成功经理。