概要:使用 AppsFlyer Adobe Launch SDK 扩展的单一实施,将数据发送到 Adobe Launch SDK 和 AppsFlyer SDK。
简要说明
Adobe Launch SDK是Adobe Experience Platform不可或缺的一部分。Adobe Experience Platform 可帮助企业收集、整合和分析来自多个应用程序和平台的数据。它使企业主和开发人员能够更好地了解客户行为,以优化体验和内容交付。如果您的应用同时实现了 Adobe Launch SDK 和 AppsFlyer SDK,则您可以使用单个 AppsFlyer Adobe Launch SDK Extension向两者发送数据。它降低了开发过程的整体复杂性,并提供了更简洁和可维护的代码库。
注意
如果您使用的是 Adobe Launch 扩展,则无需标准 Adobe Analytics 集成。
前期准备
在集成 AppsFlyer Adobe SDK 扩展之前,需要完成一些操作。
3.1获取您的AppsFlyer dev key
- 在应用的仪表板中,单击左侧菜单中“配置”下的 “应用设置”。
- 在SDK installation下 ,复制您的dev key。
获取应用 ID
- 对于 Android - 应用程序 ID 是包名称,例如 example.com.app。
- 对于 iOS - 应用程序 ID 是应用程序的 iTunes ID,不带 id 前缀,例如 123456748。
第1步:配置 Adobe Launch
按照此处的说明配置 Adobe Launch。
1.1 在 Adobe Launch 中创建新属性
1.2 安装所需的 Adobe Launch 扩展
在 Adobe Launch 中安装以下扩展:
- Adobe Analytics - 将记录的数据从SDK连接到Adobe Analytics模块。
- AppsFlyer SDK 扩展 - 使用 Adobe Launch SDK 向 Adobe 和 AppsFlyer 发送数据和事件。
- Adobe 配置文件 - 允许 SDK 将数据存储到客户端配置文件中。
- Adobe Mobile Core - 允许配置移动 SDK,并提供对默认生命周期事件和条件的访问。
安装 Adobe Analytics 扩展
- 登录到 Adobe Analytics。
- 创建报表包。
- 重新登录到 Adobe Launch。
- 从属性列表中,单击您之前创建的属性。
- 单击 扩展。
- 搜索并安装 Adobe Analytics。
- 在“报表包”下 ,指定您在步骤 2 中创建的报表包。,
- 点击保存。
安装AppsFlyer SDK扩展
- 再次选择 “ 扩展”。
- 搜索并安装 AppsFlyer SDK Extension。
- 在AppsFlyer iOS App ID, 下 ,指定您在先决条件步骤中获得的iOS应用ID。
- 在 AppsFlyer Dev Key 下 ,指定您在先决条件步骤中获得的开发密钥。
- 启用 将归因数据发送到 Adobe Analytics。请注意,与第三方分析平台共享用户级数据存在一些 限制。
- 点击保存。
安装配置文件和移动核心扩展
- 再次选择 “ 扩展”。
- 搜索并安装 Profile。
- 搜索并安装 Mobile Core。
- 安装 Mobile Core 时,只需按原样保存扩展即可。无需指定 Experience Cloud Server。
第2步:实施 AppsFlyer Adobe SDK 扩展
按照本节中的说明将 Adobe SDK 扩展实施到您的应用程序中。
2.1 将 SDK 添加到应用程序
2.2 发布环境
2.2 添加Android Install Referrer 到您的App中
Android Install Referrer可提高归因准确性,防止安装欺诈等。从AppsFlyer Android SDK版本4.8.6开始受支持。
注意
Google 在2020年3月份弃用了 BroadcastReceiver
- 这个改变不会影响到app。
- 您可能仍需要使用BroadcastReceiver进行Google外其他安卓商店的归因。请您与上架应用程序的Google市场外商店进行核对。
- 现在请务必配置install referrer提高归因准确性。
以下有两种方式可以将Install Referrer 添加到您的App中
- 使用Gradle(推荐)
- 手动添加 Install Referrer
把安卓安装Referrer添加为dependency.您可以在 此处找到最新版本.
-
dependencies { //make sure to use the latest SDK version: https://mvnrepository.com/artifact/com.appsflyer/af-android-sdk implementation 'com.appsflyer:af-android-sdk:5.+' implementation 'com.android.installreferrer:installreferrer:1.1' } - 同步项目以检索依赖项-请参见以下截图:
正在使用 ProGuard 并希望使用 Google 的新 referrer API 的开发者必须设置下列 ProGuard 规则:
- 下载安装referrer aar
- 将其添加到项目
- 将以下权限添加到清单:
com.google.android.finsky.permission.BIND_GET_INSTALL_REFERRER_SERVICE
2.3设置所需权限
添加permissions有助于概率模型归因的比率。它还允许SDK发送更多数据,例如Wifi和运营商网络数据。您可以在原始数据报告找到此数据,并将其用于分析和优化活动。
添加所需权限
- 将以下权限添加到AndroidManifest.xml:
<uses-permission android:name="android.permission.INTERNET" /> <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" /> <uses-permission android:name="android.permission.ACCESS_WIFI_STATE" /> <!-- Optional : --> <uses-permission android:name="android.permission.READ_PHONE_STATE" />
使用 Adobe SDK 扩展
现在,您可以开始使用 Adobe SDK 扩展向 Adobe 和 AppsFlyer 发送数据。
注意
目前,Adobe Launch SDK 扩展仅支持获取转化数据和发送事件。但是,当您将Adobe Launch SDK扩展添加到您的应用程序时,也会添加AppsFlyer SDK。因此,Adobe SDK扩展中目前缺少的任何功能都可以使用AppsFlyer SDK实现。
发送事件
应用内事件可助您深入了解应用里正在发生的事。我们建议您花些时间定义要记录的事件。记录应用内事件有助于您衡量ROI(投资回报率)和LTV(生命周期价值)等各项KPI。
Adobe Launch SDK 扩展允许您将应用内事件数据发送到 Adobe 和 AppsFlyer。然后,您可以使用 Adobe Analytics 来分析用户行为,并使用 AppsFlyer 来分析 ROI 和 LTV。
final Map<String,String> eventMap = new HashMap<>();
eventMap.put("currency", "USD");
eventMap.put("revenue", "200");
eventMap.put("freehand", "param");
MobileCore.trackAction("af_purchase", eventMap);
[ACPCore trackAction:@"af_purchase data:@{@"revenue":@"200",@"currency":@"USD"];
按照上述代码发送事件,会在 AppsFlyer 控制面板中创建一个名为 af_purchase 的事件,收入为 200 美元。此事件也会发送到 Adobe Analytics 并显示在 Adobe Analytics 中。
所有与事件一起发送的 转化数据 都以 appsflyer为前缀。有关示例,请参阅下表:
| 带前缀的转化数据变量 |
|---|
| appsflyer.af_click_lookback |
| appsflyer.install_time |
| appsflyer.cost_cents_USD |
| appsflyer.media_source |
| appsflyer.af_adset |
| appsflyer.click_time |
| appsflyer.orig_cost |
| appsflyer.campaign |
转换数据用于您在 Adobe Mobile Services 中创建的应用程序。转化数据中还可能显示其他参数。要了解更多信息,请点击这里 。
获取用于深度链接和延迟深度链接的数据
深度链接和延迟深度链接可让您改善用户体验。它们允许您在特定活动中打开应用程序并根据活动数据自定义内容。
若要从深度链接获取数据,请实现扩展回调。
在全局应用程序类中,实现以下代码:
AppsFlyerAdobeExtension.registerAppsFlyerExtensionCallbacks(new AppsFlyerExtensionCallbacksListener() {
@Override
public void onCallbackReceived(Map<String, String> callback) {
Log.d(AppsFlyerLibCore.LOG_TAG, callback.toString());
if(callback.get("callback_type").equals("onConversionDataReceived")){
// conversion data returned
if(callback.get("is_first_launch").equals("true")){
String af_status = callback.get("af_status");
if(af_status.equals("Non-organic")){
Log.d(AppsFlyerLibCore.LOG_TAG, "this is first launch and a non organic install!");
}
}
} else if(callback.get("callback_type").equals("onAppOpenAttribution")){
// direct deeplink - redirect user
Log.d(AppsFlyerLibCore.LOG_TAG, callback.toString());
}
}
@Override
public void onCallbackError(String errorMessage) {
Log.d("TAG", errorMessage);
}
});
在 AppDelegate.m 中,实现以下代码:
[AppsFlyerAdobeExtension registerCallbacks:^(NSDictionary *dictionary) {
NSLog(@"[AppsFlyerAdobeExtension] Received callback: %@", dictionary);
if([[dictionary objectForKey:@"callback_type"] isEqualToString:@"onConversionDataReceived"]){
if([[dictionary objectForKey:@"is_first_launch"] boolValue] == YES){
NSString* af_status = [dictionary objectForKey:@"af_status"];
if([af_status isEqualToString:@"Non-organic"]){
NSLog(@"this is first launch and a non organic install!");
}
}
} else if([[dictionary objectForKey:@"callback_type"] isEqualToString:@"onAppOpenAttribution"]) {
NSLog(@"onAppOpenAttribution Received");
}
}];
[AppsFlyerAdobeExtension callbacksErrorHandler:^(NSError *error) {
NSLog(@"[AppsFlyerAdobeExtension] Error recieving callback: %@" , error);
}];
获取AppsFlyer转化数据
转化数据将与事件一起发送到 Adobe 平台。通过这些变量,您可以将逻辑和规则应用于报表维度、指标或过滤条件。
- 登录到您的 Adobe Mobile Services。
- 选择相关应用,然后进入 “管理变量和指标 ”页面。
- 选择自定义变量 选项卡,并配置变量以将AppsFlyer SDK数据映射到Adobe系统。
- 对于每个自定义变量,输入一个有意义的名称。
- 选择或键入映射的 AppsFlyer 转化数据,然后选择您喜欢 的持久性 范围。
有关AppsFlyer上下文变量的映射,请参见下表:
|
建议映射的名称 |
转化数据 |
|---|---|
|
AppsFlyer Lookback Window |
appsflyer.af_click_lookback |
|
AppsFlyer 安装时间 |
appsflyer.install_time |
|
AppsFlyer 成本美分 US |
appsflyer.cost_cents_USD |
|
AppsFlyer MediaSource |
appsflyer.media_source |
|
AppsFlyer Adset |
appsflyer.af_adset |
|
AppsFlyer 点击时间 |
appsflyer.click_time |
|
AppsFlyer 原始成本 |
appsflyer.orig_cost |
|
AppsFlyer 活动 |
appsflyer.campaign |
使用 AppsFlyer 映射的转化数据进行分析和分析
来自 SDK 的所有数据都可以在连接到应用程序的 Adobe Analytics 报表包中使用。
您可以在生成的 Adobe Analytics 报表和仪表板中使用数据及其相关维度和指标。这些数据也可在 AppsFlyer 控制面板中获取,用于归因和应用内事件分析。
This article was translated using AI and may contain errors. For the most accurate information, please refer to the English version using the language selector.