概要:将AppsFlyer与Amplitude集成,以共享用户归因数据和事件分析,从而更好地洞察用户参与度、留存率和收入。根据您的用例和分析需求,在两个集成版本——V1或V2之间进行选择。
关于集成
Amplitude是AppsFlyer的集成合作伙伴,是一个产品分析平台,供产品、增长和营销团队使用,以了解用户在移动和网络上的行为。该集成允许AppsFlyer在安装后将关键事件数据发送到Amplitude,从而实现全面的用户级分析。
有两个Amplitude集成版本:
-
Amplitude V1:
此版本使用Amplitude的归因API。AppsFlyer在集成完成后发送收集的安装数据。Amplitude使用广告ID作为标识符,如果在72小时内没有记录匹配的用户事件,则会丢弃数据。详情请见此处说明。 -
Amplitude V2 :
此版本使用Amplitude的HTTP V2 API。完成对接后,AppsFlyer 可向其同步激活事件与应用内事件数据。系统会优先使用 user_id 和 device_id 进行用户匹配,若匹配失败,则会记录为新用户。详情请见此处说明。
集成版本:
| 版本 | 使用的API | 使用的标识符 | 事件覆盖 |
|---|---|---|---|
| V1 | Attribution API | 广告ID(AdID) | 仅激活 |
| V2 | HTTP V2 API |
user_id, device_id(回退逻辑) |
安装和应用内事件 |
重要提示!
- 选择 Amplitude V1 或 V2 集成。请勿同时使用。同时使用两个版本可能会导致重复事件发送到 Amplitude。
- 某些媒体来源限制与第三方共享数据。即使已配置,受限事件的回传也不会发送给此合作伙伴。
前期准备
前期准备:
- 如果您还没有帐户,请联系 Amplitude 创建一个。
- 决定您将设置 Amplitude V1 还是 V2 集成。
- 确保您避免从 Amplitude SDK 和 AppsFlyer 同时发送相同的事件,以防止重复。
- 请查看 Amplitude V2 集成的额外前提条件。
Amplitude V2 集成的额外前提条件
V2 集成需要设置:
Amplitude 设备 ID
要启用用户级归因,您必须将 Amplitude 设备 ID 传递到 AppsFlyer SDK。此值会随每个回传发送。
AppsFlyerLib.getInstance().setAdditionalData("AmplitudeDeviceId", amplitude.getDeviceId())
语言Java Kotlin
[[AppsFlyerLib shared] setAdditionalData:@{@"AmplitudeDeviceId": [[Amplitude instance] getDeviceId]}];
语言Objective-C
文档: iOS SDK 参考,Amplitude
AppsFlyerLib.shared().customData = ["AmplitudeDeviceId": Amplitude.instance().getDeviceId()]
语言Swift
文档: iOS SDK 参考,Amplitude
Dictionary<string, string> customData = new Dictionary<string, string>();
customData.Add("AmplitudeDeviceId", Amplitude.getInstance().getDeviceId());
AppsFlyer.setAdditionalData(customData);
语言C#
文档:Unity SDK 参考
appsFlyer.setAdditionalData({"AmplitudeDeviceId": amplitude.getDeviceId()},
(res) => {
//...
}
);
语言JavaScript
appsFlyer.setAdditionalData({"AmplitudeDeviceId": amplitude.getDeviceId()});
语言JavaScript
文档:不适用
var data = {"AmplitudeDeviceId": amplitude.getDeviceId()};
appsFlyerSdk.setAdditionalData(data);
语言Dart
Customer user ID
用于设置客户用户ID(CUID)。这是一个通常在用户注册期间由应用所有者生成和设置的唯一标识符。
由应用所有者在用户注册期间设置。详情请见此处说明。
Amplitude 会话 ID
设置 Amplitude 会话 ID 并将其传递给 AppsFlyer(可选)。详情请见此处说明。
AppsFlyerLib.getInstance().setAdditionalData("AmplitudeSessionId", amplitude.getSessionId())
语言Java Kotlin
文档:安卓SDK对接参考文档
[[AppsFlyerLib shared] setAdditionalData:@{@"AmplitudeSessionId": [[Amplitude instance] getSessionId]}];
语言Objective-C
文档: iOS SDK 参考
AppsFlyerLib.shared().customData = ["AmplitudeSessionId": Amplitude.instance().getSessionId()]
语言Swift
文档: iOS SDK 参考
Dictionary<string, string> customData = new Dictionary<string, string>();
customData.Add("AmplitudeSessionId", Amplitude.getInstance().getSessionId());
AppsFlyer.setAdditionalData(customData);
语言C#
文档:Unity SDK 参考
appsFlyer.setAdditionalData({"AmplitudeSessionId": amplitude.getSessionId()},
(res) => {
//...
}
);
语言JavaScript
appsFlyer.setAdditionalData({"AmplitudeSessionId": amplitude.getSessionId()});
语言JavaScript
文档:不适用
var data = {"AmplitudeSessionId": amplitude.getSessionId()};
appsFlyerSdk.setAdditionalData(data);
语言Dart
如需设置对接:
如需设置对接:
- 在 AppsFlyer 中,转到 协作 >合作伙伴市场。
- 要设置 Amplitude V1 集成,请选择 Amplitude V1(技术合作伙伴)。
要设置 Amplitude V2 集成,请选择 Amplitude V2 (技术合作伙伴)。
- 选择 Amplitude 版本后,单击 设置集成。
点击设置对接,
- (此开关在渠道对接选项卡中)。
- 选择您的应用。
- 打开 激活合作伙伴 切换。
- 在其余选项卡中完成配置:
渠道对接选项卡
下文说明了对接选项卡中所包含各部分内容。
启用渠道
请在首次访问该页面时打开启用该渠道开关,然后就可以设置对接了。在您与该渠道合作期间,请确保该开关总是处于打开状态。
详情请见渠道启用说明。
通用设置
高级数据共享(Advanced data sharing)
要与 Amplitude 分享额外的安装信息,请开启 高级数据共享。开启后,Amplitude 将接收以下与安装相关的数据(不包括应用内事件),并映射到列出的 Amplitude 属性:
| Amplitude 属性 | AppsFlyer Data Point |
|---|---|
| sub_publisher | af_siteid |
| network_name | pid |
| adgroup_name | af_adset |
| creative_name | af_ad_id |
| installed_at | install_timestamp |
| search_term | af_keywords |
| channel | af_channel |
| user_id | af_customer_user_id |
| af_sub1 | af_sub1 |
| af_sub2 | af_sub2 |
| af_sub3 | af_sub3 |
| af_sub4 | af_sub4 |
| af_sub5 | af_sub5 |
| app_version | app_version |
Amplitude EU Data Center
当 Amplitude 欧盟数据中心 关闭时,安装回调将发送到美国数据中心。
要将安装回调发送到 Amplitude 的欧盟数据中心,请开启 Amplitude 欧盟数据中心。
API Key
Amplitude 通过唯一的 API 密钥与 AppsFlyer 连接。如果您还没有,必须从 Amplitude 获取它以继续集成,或按照以下步骤操作。
从 Amplitude 获取 API 密钥
注意:只有在 Amplitude 上拥有管理员或经理角色的用户才能访问 API 密钥。
- 登录到您的 Amplitude 账户。
- 在页面右上角,点击设置图标 > 组织设置。
Amplitude
- 点击 项目 并选择要将数据发送到 AppsFlyer 的项目。
Amplitude
- 在 项目 标签中,复制您的 API 密钥。
Amplitude
- 继续在 AppsFlyer 仪表板中配置 Amplitude。
默认回传
AppsFlyer 可以在用户安装后自动向 Amplitude 发送回调。使用此部分定义每个事件的回调发送用户的来源。了解更多关于 默认回调 的信息。
应用内事件设置
- 输入 API 密钥。
- 当 Amplitude 数据中心 关闭时,应用内事件回调将发送到美国数据中心。
要将应用内事件回调发送到 Amplitude 的欧盟数据中心,请开启 Amplitude 数据中心。
一旦您保存了配置,AppsFlyer 将以下数据发送到 Amplitude:
- 设备 ID (IDFV/Google 广告 ID)
- Media Source(媒体渠道)
- Campaign name
向 iOS 设备发送 IDFA 需遵循 用户的 ATT 同意和高级隐私设置。
应用内事件回传
配置发送应用内事件回调 到 Amplitude。
归因链接选项卡
成本选项卡
该合作伙伴不支持成本数据对接。
广告收入选项卡
该渠道不支持广告收入对接。
授权选项卡
Amplitude 不提供权限。
在 Amplitude 控制台查看归因数据
从 AppsFlyer 发送到 Amplitude 的归因数据在您的仪表板中显示为以 [AppsFlyer] 为前缀的事件和属性:
重要提示!
在某些情况下,Amplitude 将来自 AppsFlyer 的数据显示为 "已阻止"。如果您在 Amplitude 中看不到 AppsFlyer 数据,请检查它是否被定义为阻止事件。
将 Amplitude 事件发送到 AppsFlyer
该集成还允许通过服务器到服务器 API 将您的 Amplitude 事件发送到 AppsFlyer。请参阅 Amplitude 文档 了解如何操作。