如何判断成功调用trackAppInstall接口
首先需要您们开发人员在您们的 App 中 ,调用 trackAppInstall 接口 ,用来采集 $AppInstall 事件。
注:
(1)如果使用精准匹配,iOS 端需要开启获取 IDFA 权限(您的 App 里需要引入 AdSupport 库);Android 端需要在代码里开启获取 IMEI 权限(即 Android SDK 文档中动态申请 android.permission.READ_PHONE_STATE )。
(2)不可以直接在 trackAppInstall 接口中给 utm_soure 等 utm 属性赋值。如果添加了这些赋值代码,App 激活时,就不会进行渠道匹配,而是使用代码中填写的渠道信息设置属性值。
(3)可把渠道包信息,直接设置为 $AppInstall 事件的属性,比如渠道属性 downloadChannel:huawei。
对于 Android 可以给应用商店上传带有标记的渠道包( apk 包),便于区分每个渠道的下载量。可以使用 DownloadChannel 来记录下载商店的渠道。这里 DownloadChannel 只是一个示例,如果需要多个字段来标记渠道包,请按业务实际需要添加。
XML
AndroidManifest.xml 中:
<meta-data android:name="YOUR_DOWNLOAD_CHANNEL" android:value="应用宝" />
Android 端
初始化 SDK 后,可以调用 trackAppInstall() 方法记录激活事件,多次调用此方法只会在第一次调用时触发激活事件:
JAVA
// 记录激活事件,无自定义属性
try {
// 触发激活事件
SensorsDataAPI.sharedInstance().trackAppInstall();
} catch (Exception e) {
e.printStackTrace();
}
// 记录激活事件,有自定义属性
try {
JSONObject properties = new JSONObject();
//这里的 DownloadChannel 负责记录下载商店的渠道,值应传入具体应用商店包的标记。如果没有为不同商店打多渠道包,则可以忽略该属性的代码示例。
properties.put("DownloadChannel", "XXX");
// 触发激活事件
SensorsDataAPI.sharedInstance().trackAppInstall(properties);
} catch (Exception e) {
e.printStackTrace();
}
iOS 端
初始化 SDK 后,可以调用 - trackAppInstall 方法记录激活事件,多次调用此方法只会在第一次调用时触发激活事件:
// 记录激活事件,无自定义属性
[[SensorsAnalyticsSDK sharedInstance] trackAppInstall];
// 记录激活事件,有自定义属性
[[SensorsAnalyticsSDK sharedInstance] trackAppInstallWithProperties:@{@"DownloadChannel": @"AppStore"}];
注意: 一定不要在调用 trackAppInstall 接口时传入 $utm_ 相关的属性。如果要追踪推广渠道,需要用 App 渠道链接来追踪(推广的渠道链接一般由产品运营人员创建)
$AppInstall 事件采集成功后,可以在神策系统查看是否有相应的 AppInstall 事件(即 App 激活事件):
如何切换trackAppInstall接口
Android 端
由 trackInstallation 接口改为 trackAppInstall() 接口记录激活事件,多次调用此方法只会在第一次调用时触发激活事件:
// 记录激活事件,无自定义属性
try {
// 触发激活事件
SensorsDataAPI.sharedInstance().trackAppInstall();
} catch (Exception e) {
e.printStackTrace();
}
// 记录激活事件,有自定义属性
try {
JSONObject properties = new JSONObject();
//这里的 DownloadChannel 负责记录下载商店的渠道,值应传入具体应用商店包的标记。如果没有为不同商店打多渠道包,则可以忽略该属性的代码示例。
properties.put("DownloadChannel", "XXX");
// 触发激活事件
SensorsDataAPI.sharedInstance().trackAppInstall(properties);
} catch (Exception e) {
e.printStackTrace();
}
iOS 端
由- trackInstallation: 接口改为- trackAppInstall 接口记录激活事件,多次调用此方法只会在第一次调用时触发激活事件:
// 记录激活事件,无自定义属性
[[SensorsAnalyticsSDK sharedInstance] trackAppInstall];
// 记录激活事件,有自定义属性
[[SensorsAnalyticsSDK sharedInstance] trackAppInstallWithProperties:@{@"DownloadChannel": @"AppStore"}];
事件名修改
事件名由自定义事件 AppInstall 改为预置事件 $AppInstall 事件
若用原记录的激活事件名不是 $AppInstall,需要使用虚拟事件将原激活事件和 $AppInstall 合并分析数据,具体咨询神策技术支持
如何接收广告商的其他参数
如果客户想要接收广告商的其他参数用于分析,例如获取对应的广告计划 id(AID) 以区分不同的广告计划,可按照下面的方式实现。
下列以头条为例进行说明。
方案一:使用神策预置的 utm 属性存放对应的参数
1、在渠道管理工具中,选择字节-巨量广告渠道,并且根据 字节-巨量广告对接文档 将链接里不存在的且想要接收的其他参数(例如 请求语言)的宏(__SL__)填写到 神策预置的 utm_ 属性下,生成对应的监测链接。
2、渠道匹配成功后,对应的 utm_ 属性下的值,即为接收的第三方渠道参数的值(例如 请求语言: SL)
方案二:使用自定义属性存放对应的参数
1、在渠道管理工具中,选择今日头条/抖音渠道,并且根据 字节-巨量广告的对接文档 将链接里不存在的且想要接收的其他参数(例如请求语言)的宏(__SL__)填写到 自定义属性下,生成对应的监测链接。
2、渠道匹配成功后,对应的自定义属性下的值,即为接收的第三方渠道参数的值(例如 请求语言: SL)
自定义属性:即使用utm属性参数帮助用户区分各渠道投放效果。
注意:开启强校验后,需要在事件管理里面把$AppChannelMatching的可见性设置为true,才能使用自定义属性。
后端埋点的深度回传事件配置
若您将后端埋点的事件配成深度回传事件,确保该事件可成功回调,需您在后端埋点的深度回传事件上报时必须加上以下属性
| 属性名 | 属性类型 | 默认显示名 | 支持情况 |
|---|---|---|---|
| $is_channel_callback_event |
布尔值 | 是否进行渠道匹配回调 | 默认只有首次触发渠道追踪自定义事件时,该属性的值为 ture,后续再次触发该事件时,该属性值为 false。可在创建渠道链接时设置首次回传和每次回传。 |
| $app_id | 字符串 | 应用唯一标识 |
若您将后端埋点的事件配成深度回传事件,确保该事件可成功回调,需您在后端埋点的深度回传事件上报时必须加上 $app_id 属性回传。 请调用下列客户端 SDK 的方法获取 $app_id ,避免手动输入错误导致无法成功回传:
Android SDK 4.1.0 版本支持 iOS SDK 2.0.9 版本支持 |
iOS 14 相关问题
1、当 IDFA 无法追踪时,匿名ID用什么?
神策会调用 IDFV 作为匿名设备 ID 进行采集,当 IDFV 也无法采集的情况会使用 UUID 进行兜底。
