Meta之 AMM 数据获取详解

引言

Meta 重新向开发者开放了高级移动衡量(AMM)功能,这一更新对 iOS 开发者尤为重要。AMM 允许开发者获取更详细的广告归因数据,包括点击、浏览、安装和重新参与等指标,尤其在 iOS 14.5+ 的隐私限制(如 ATT 框架)下显得尤为关键。

AMM 的背景与重要性

  • AMM 定义:AMM 是 Meta 提供的一项服务,通过移动测量合作伙伴(MMP)如 Adjust、AppsFlyer 或 Singular,开发者可以获取非聚合的广告归因数据。
  • 重新开放时间 :根据 Meta measurement updates: AMM now supported in Adjust,AMM 于 2025 年 6 月 17 日重新启用,支持 iOS 和 Android。
  • iOS 挑战:iOS 14.5+ 的 ATT 框架限制了 IDFA 使用,AMM 帮助开发者在隐私保护下获取更精确的用户行为数据。

AMM 数据获取方式

  • 非直接集成 :研究表明,AMM 数据不能直接通过 Meta iOS SDK 获取,而是通过 MMP 间接获取。Meta 的文档(如 AppsFlyer Meta ads integration setup)明确指出,开发者需通过 MMP 访问 AMM 数据。
  • 应用内 vs 外部:应用内可以通过 MMP SDK 获取基本归因信息(如广告来源、活动名称),但详细的 AMM 数据(如行级数据)需通过 MMP 的报告工具或 API。

在 iOS 应用中集成 MMP SDK

为了在应用内获取归因信息,开发者需要集成支持 AMM 的 MMP SDK。以下是详细步骤,以 Adjust 为例:

步骤 操作 细节
1 获取 Adjust App Token 从 Adjust 仪表板(Menu -> Apps)获取
2 集成 SDK 使用 Swift Package Manager 添加 Adjust SDK,URL 为 Adjust iOS SDK GitHub
3 初始化 SDK AppDelegate 中初始化,如下所示:
4 设置归因回调 实现 AdjustDelegate 以监听归因变化

示例代码(Swift)

swift 复制代码
import Adjust

class AppDelegate: UIResponder, UIApplicationDelegate, AdjustDelegate {
    func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplication.LaunchOptionsKey: Any]?) -> Bool {
        let config = ADJConfig(appToken: "YOUR_ADJUST_APP_TOKEN", environment: ADJEnvironmentProduction)
        config.delegate = self // 设置代理
        config.logLevel = ADJLogLevelVerbose // 可选:设置详细日志
        Adjust.appDidLaunch(config)
        return true
    }

    // 归因变化回调
    func adjustAttributionChanged(_ attribution: ADJAttribution?) {
        if let attribution = attribution {
            print("Tracker Token: \(attribution.trackerToken ?? "N/A")")
            print("Network: \(attribution.network ?? "N/A")")
            print("Campaign: \(attribution.campaign ?? "N/A")")
            // 其他属性如 adgroup, creative 等
        }
    }
}
  • 通过 adjustAttributionChanged 回调,你可以在应用内获取当前设备的归因信息。

可用归因数据

Adjust SDK 提供的 AdjustAttribution 类包含以下属性(根据 Get attribution information | Adjust Developer Hub):

属性 数据类型 描述
trackerToken NSString 当前归因的链接 Token
trackerName NSString 当前归因的链接名称
network NSString 当前归因的网络名称
campaign NSString 当前归因的广告活动名称
adgroup NSString 当前归因的广告组名称
creative NSString 当前归因的创意名称
clickLabel NSString 安装标记的点击标签(见:User Rewards
costType NSString 广告活动的定价模型(如 CPI)
costAmount NSNumber 安装成本
costCurrency NSString 与成本相关的 3 字符 ISO 4217 货币代码(见:Currency Codes
jsonResponse NSDictionary 后端发送给 SDK 的归因响应,以字典形式返回
  • 未填充的值返回 null。需要注意的是,某些值(如成本相关)需要配置 needsCost 属性。

启用 AMM

为了确保获取 AMM 数据,需在 Meta 开发者账户中启用:

  • 登录 Meta App Dashboard,选择你的应用。
  • 导航至 Settings > Advanced Mobile Measurement,接受 AMM 条款。
  • 在 MMP 仪表板中(如 Adjust)设置 Meta 集成:
    • 导航至 Collaborate > Partner Marketplace ,搜索 Meta,点击 Set up integration
    • 启用 Activate partner ,输入 Meta App ID,并可选启用 Advanced data sharing

获取详细 AMM 数据

  • 应用内限制:应用内通过 SDK 获取的归因信息是基本数据,详细的 AMM 数据(如行级数据)需通过 MMP 的外部工具获取。
  • API 访问 :例如,Adjust 提供 Raw Data Export API,可通过 API Token 和 App Token 获取详细数据。见 Adjust API 文档
  • 报告工具:在 MMP 仪表板中(如 Adjust 的 Raw Data Reports)查看详细 AMM 数据,用于分析和优化。

结论

在 iOS 应用中获取用户归因信息需要通过 MMP(如 Adjust)集成其 SDK,并通过回调函数在应用内获取基本归因信息。启用 AMM 后,详细数据需通过 MMP 的报告工具或 API 获取。确保在 Meta 开发者账户中接受 AMM 条款,并正确配置集成,以优化广告效果。

相关推荐
大熊猫侯佩9 天前
消失的它:摆脱 SwiftUI 中“嵌入视图数量不能超过 10 个”限制的秘密
swiftui·swift·apple
大熊猫侯佩9 天前
Swift 抛砖引玉:从数组访问越界想到的“可抛出错误”属性
swift·apple
大熊猫侯佩9 天前
ruby、Python 以及 Swift 语言关于 “Finally” 实现的趣谈
python·ruby·swift
minos.cpp10 天前
从厨房到代码台:用做菜思维理解iOS开发 - Swift入门篇①
ios·蓝桥杯·swift
杂雾无尘10 天前
开发者必看,全面解析 iOS 架构,探索 iOS 背后的秘密!
ios·swift·apple
冯志浩10 天前
Swift:移除数组中的重复元素
swift·掘金·金石计划
东坡肘子10 天前
失去时才会觉得可贵 | 肘子的 Swift 周报 #090
swiftui·swift·apple
YungFan11 天前
iOS26适配指南之@Observable Object
ios·swift
杂雾无尘11 天前
不为人知的技巧:Swift 中用特有方法实现"黑魔法"方法交换
ios·swift·客户端