integrationlatest接入文档 / 预置属性
预置属性
一、 所有事件带有的预置属性
以下预置属性,是 SDK 中所有事件都会带有的预置属性
| 属性名 | 中文名 | 属性类型 | 说明 |
#ip | IP 地址 | 文本 | 用户的 IP 地址,AE 将以此获取用户的地理位置信息 |
| #country | 国家 | 文本 | 用户所在国家,根据 IP 地址生成 |
#country_code | 国家代码 | 文本 | 用户所在国家的国家代码(ISO 3166-1 alpha-2,即两位大写英文字母),根据 IP 地址生成 |
| #province | 省份 | 文本 | 用户所在省份,根据 IP 地址生成 |
| #city | 城市 | 文本 | 用户所在城市,根据 IP 地址生成 |
| #os_version | 操作系统版本 | 文本 | iOS 11.2.2、Android 8.0.0 等 |
#manufacturer | 设备制造商 | 文本 | 用户设备的制造商,如 Apple,vivo 等 |
| #os | 操作系统 | 文本 | 如 Android、iOS 等 |
#device_id | 设备 ID | 文本 | 用户的设备 ID,iOS 取用户的 IDFV 或 UUID,Android 取 androidID |
| #app_version | APP 版本 | 文本 | 您的 APP 的版本 |
| #bundle_id | 应用唯一标识 | 文本 | 应用包名或进程名 |
#lib | SDK 类型 | 文本 | 您接入 SDK 的类型,如 Android,iOS 等 |
| #lib_version | SDK 版本 | 文本 | 您接入 SDK 的版本 |
#zone_offset | 时区偏移 | 数值 | 数据时间相对 UTC 时间的偏移小时数 |
| #install_time | 程序安装时间 | 时间 | 用户安装应用的时间,值来源于系统 |
#system_language | 系统语言 | 文本 | 用户设备的系统语言(ISO 639-1,即两位小写英文字母),如 zh, en 等 |
二、 其他预置属性
除了上述提到预置属性,还有部分预置属性需要调用对应接口才会被记录:
| 属性名 | 中文名 | 属性类型 | 说明 |
| #duration | 事件时长 | 数值 | 需要调用计时功能接口timeEvent:,记录事件发生时长,单位是秒 |
| #background_duration | 后台停留时长 | 数值 | 需要调用计时功能接口timeEvent,记录事件发生区间内,应用在后台的停留时长,单位是秒 |
三、 获取预置属性
可以调用 getPresetProperties 方法获取预置属性。
服务端埋点需要 App 端的一些预置属性时,可以通过此方法获取 App 端的预置属性,再传给服务端。
- Objective-C
- Swift
//获取属性对象
TDPresetProperties *presetProperties = [TDAnalytics getPresetProperties];
//生成事件预置属性
NSDictionary *properties = [presetProperties toEventPresetProperties];
/*
{
"#os": "OSX",
"#device_id": "A8B1C00B-A6AC-4856-8538-0FBC642C1BAD",
"#bundle_id": "com.sw.thinkingdatademo",
"#manufacturer": "Apple",
"#system_language": "zh",
"#os_version": "10",
"#zone_offset": 8,
"#app_version":"1.0.0"
}
*/
//获取某个预置属性
NSString *bundle_id = presetProperties.bundle_id;//包名
NSString *os = presetProperties.os;//os类型,如OSX
NSString *system_language = presetProperties.system_language;//系统语言类型
NSString *os_version = presetProperties.os_version;//系统版本号
NSNumber *zone_offset = presetProperties.zone_offset;//时区偏移
let presetProperties = TDAnalytics.getPresetProperties();
//生成事件预置属性
let properties = presetProperties.toEventPresetProperties();
//获取某个预置属性
let bundle_id = presetProperties.bundle_id;//包名
let os = presetProperties.os;//os类型,如OSX
let system_language = presetProperties.system_language;//系统语言类型
let os_version = presetProperties.os_version;//系统版本号
let zone_offset = presetProperties.zone_offset;//时区偏移值
IP,国家城市信息由服务端解析生成,客户端不提供接口获取这些属性
这篇文档对你有帮助吗?

