analysysAPICloudSDK
概述
analysysAPICloudSDK 模块封装了易观方舟 AnalysysAgent SDK 数据统计 iOS 及 Android SDK,使用此模块进行数据采集。
易观方舟基于实时用户行为数据流,为企业和团队提供可靠的行为事件驱动能力。易观方舟包含面向中小初创的免费社区版,以及规模化成熟团队的企业版,满足各阶段团队数据建模、采集、存储、分析、展示及应用的需求。可以帮助团队在业务分析、产品优化、用户触达等复杂场景中解放生产力,提高效率。另外,易观方舟基于 PasS 平台构建,可以方便灵活地二次开发、本地化或云端部署,与企业内原有的平台进行数据层面的打通,为企业数字化、数据驱动路径上必要的核心基础组件。
使用前请先在方舟后台创建相应的项目,然后将数据上报地址及appkey配置到config.xml中。
论坛示例
为帮助用户更好更快的使用模块,论坛维护了一个示例,示例中包含示例代码、知识点讲解、注意事项等,供您参考。
初始化配置
使用analysysAPICloudSDK模块时,必须配置config.xml中的feature参数。示例如下:
<widget ....>
...
<feature name="analysysAPICloudSDK">
<param name="debugMode" value="0" />
<param name="uploadURL" value="https://arksdktest.analysys.cn:4069" />
<param name="appKey" value="sdktest201907" />
<param name="channel" value="App Store" />
<param name="encryptType" value="1" />
</feature>
...
</widget>
配置说明:
- feature 名称:analysysAPICloudSDK
param 参数
- debugMode:debug 模式。注意:发布版本时 debugMode 模式设置为 0。
- 0:表示关闭(默认)
- 1:表示打开 Debug 模式,但该模式下发送的数据仅用于调试,不计入平台数据统计
- 2:表示打开 Debug 模式,该模式下发送的数据可计入平台数据统计
- uploadURL:数据上传地址,格式为
scheme://host + :port
(不包含/
后的内容)。scheme 必须以http://
或https://
开头,host 只支持域名和 IP,取值长度为1-255个字符,port 端口号必须携带。 - appKey:在网站获取的 AppKey
- channel:应用下发渠道
- encryptType:设置数据上传时的加密方式
- 0:数据不加密(默认)
- 1:AES ECB加密
- 2: AES CBC加密
- debugMode:debug 模式。注意:发布版本时 debugMode 模式设置为 0。
可用性
iOS系统,Android系统
可提供的 1.2.0 及更高版本
alias
用户 id 关联接口。将需要绑定的用户ID 和设备ID进行关联,计算时会认为是一个用户的行为。
alias({params})
params
aliasId:
- 类型:字符串
- 默认值:无
- 描述:新的唯一用户 id。 取值长度为1-255个字符
originalId:
- 类型: 字符串
- 默认值:无
- 描述:待关联的设备ID,可以是现在使用也可以是历史使用的设备ID,不局限于本地正使用的设备ID。 可以为空值,若为空时使用本地的设备ID。取值长度 1 - 255 字符(如无特殊需求,不建议设置),支持类型:String
示例代码
function alias() {
var analysysSDK = api.require("analysysAPICloudSDK")
analysysSDK.alias({
aliasId: "zhangsan",
originalId: "lisi"
});
}
可用性
iOS系统,Android系统
可提供的 1.2.0 及更高版本
registerSuperProperties
设置公共属性,一旦设置,之后触发的事件将会带上次部分属性信息
registerSuperProperties({params})
params
properties:
- 类型:json格式
- 默认值:无
- 描述:属性名以字母或
$
开头,只能包含字母、数字、下划线和$
,字母不区分大小写,$
开头为预置事件/属性,取值长度 1 - 125 字符,不支持乱码和中文
示例代码
function registerSuperProperties() {
var analysysSDK = api.require("analysysAPICloudSDK")
analysysSDK.registerSuperProperties({
properties: {
"age" : 10,
"address" : "beijing"
}
});
}
可用性
iOS系统,Android系统
可提供的 1.2.0 及更高版本
track
用户行为追踪,可以设置自定义属性
track({params})
params
event
- 类型:字符串
- 默认值:无
- 描述:事件ID,以字母或
$
开头,只能包含字母、数字、下划线和$
,字母不区分大小写,$
开头为预置事件/属性,最大长度 99字符,不支持乱码和中文
properties:
- 类型:json格式
- 默认值:无
- 描述:属性名以字母或
$
开头,只能包含字母、数字、下划线和$
,字母不区分大小写,$
开头为预置事件/属性,key长度 1 - 125 字符,不支持乱码和中文
示例代码
function track() {
var analysysSDK = api.require("analysysAPICloudSDK")
analysysSDK.track({
event:"Buy",
properties: {
"Goods" : "iPhone X"
}
});
}
可用性
iOS系统,Android系统
可提供的 1.2.0 及更高版本
pageView
页面行为追踪,可以设置自定义属性
pageView({params})
params
pageName
- 类型:字符串
- 默认值:无
- 描述:页面标识
properties:
- 类型:json格式
- 默认值:无
- 描述:属性名以字母或
$
开头,只能包括字母、数字、下划线和$
,字母不区分大小写,$
开头为预置事件/属性,不支持乱码和中文
示例代码
function pageView() {
var analysysSDK = api.require("analysysAPICloudSDK")
analysysSDK.pageView({
pageName:"HomePage",
properties: {
"title" : "首页",
"category": "phone"
}
});
}
可用性
iOS系统,Android系统
可提供的 1.2.0 及更高版本
profileSet
给用户设置单个或多个属性,如果之前不存在,则新建,否则覆盖。接口如下:
profileSet({params})
params
properties:
- 类型:json格式
- 默认值:无
- 描述:属性名以字母或
$
开头,只能包括字母、数字、下划线和$
,字母不区分大小写,$
开头为预置事件/属性,不支持乱码和中文
示例代码
function profileSet() {
var analysysSDK = api.require("analysysAPICloudSDK")
analysysSDK.profileSet({
properties: {
"Hobby" : "paly football",
"Name" : "Analysys"
}
});
}
可用性
iOS系统,Android系统
可提供的 1.2.0 及更高版本
profileSetOnce
设置用户的固有属性,只在首次设置时有效的属性。 如:应用的激活时间、首次登录时间等。如果被设置的用户属性已存在,则这条记录会被忽略而不会覆盖已有数据,如果属性不存在则会自动创建。接口如下:
profileSetOnce({params})
params
properties:
- 类型:json格式
- 默认值:无
- 描述:属性名以字母或
$
开头,只能包括字母、数字、下划线和$
,字母不区分大小写,$
开头为预置事件/属性,不支持乱码和中文
示例代码
function profileSetOnce() {
var analysysSDK = api.require("analysysAPICloudSDK")
analysysSDK.profileSetOnce({
properties: {
"id" : "726392387",
"Sex" : "male"
}
});
}
可用性
iOS系统,Android系统
可提供的 1.2.0 及更高版本
getDistinctId
获取匿名id,在用户未登录时SDK使用的标识信息。
getDistinctId()
- 返回当前使用的匿名标识
示例代码
function getDistinctId() {
var analysysSDK = api.require("analysysAPICloudSDK")
var distinctId = analysysSDK.getDistinctId();
}
可用性
iOS系统,Android系统
可提供的 1.2.0 及更高版本