快应用 SDK
优质
小牛编辑
128浏览
2023-12-01
1. 集成sdk
1.1 安装sdk
npm i zg-sdk-quickapp
1.2 引用sdk
在src目录下app.ux引入sdk文件
import zhuge from 'zg-sdk-quickapp'
zhuge.load('AppKey', {
// load配置参数,具体见下方
})
export default trackApp({
...
})
1.3 增加代码检查规则
修改项目根目录下的.eslintrc.json中的globals字段,增加以下代码
"globals": {
...
"trackApp": false,
"trackPage": false,
"zhuge": false
}
1.4 添加权限声明代码
"features": [
...
{"name": "system.fetch"},
{"name": "system.storage"},
{"name": "system.router"},
{"name": "system.network"},
{"name": "system.device"}
]
1.5 使用sdk封装的trackPage替换所有页面
export default trackPage({
...
})
引入成功后,即可在全局任意地方,通过zhuge对象调用sdk函数,如:zhuge.track('登录')
2. API列表
2.1 load(appkey, config)
- appkey \ 您在诸葛申请的APP KEY
- config \ sdk配置信息。不需要自定义的参数可忽略 完整默认配置如下:
使用示例:{ serverUrl: { // 事件上报地址。使用的上报地址 normal: 'https://u.zhugeapi.net', // 主地址 bac: 'https://ubak.zhugeio.com' // 备用地址 }, pv: true, // 全埋点,自动上报pv click: true, // 全埋点,自动上报click timeout: 30 * 60 * 1000, // 会话超时时间(默认30分钟),单位:毫秒 vn: '1.0', // 应用版本(快应用项目本身的版本号) sendLimit: 1, // 请求最大缓存数 debug: false, // 开启实时调试 superProperty: {}, // 全局事件属性,设置后除会话、环境及identify事件外,所有事件都会自动加上该配置所有属性 countDuration: 3000, // 计数行为统计时间周期,单位:毫秒。在这个时间范围内,同一事件反复上报时,sdk会将其计数并合并为一条记录 did: '', // 自定义did requestTimeout: 400 // 请求超时事件,不会cancel请求,超时会执行回调 }
zhuge.load('AppKey', { pv: true })
当superProperty属性与上传事件时指定的属性冲突,则superProperty被覆盖
2.2 identify(cuid, props)
- cuid \ 用户唯一标识
- props \ 用户属性
为了保持对用户的跟踪,你需要为他们记录一个识别码,可以使用手机号、email等唯一值来作为用户的识别码。另外,也可以在跟踪用户的时候,记录用户更多的属性信息,便于你更了解你的用户
使用示例:zhuge.identify('17711111111', { '性别': '男', '会员级别': '白金' })
2.3 track(eventName, props)
- eventName \ 事件名称
- props \ 事件属性 使用示例:
zhuge.track('加入购物车', { '商品名称': '华为P30', '商品分类': '3C' })
注意:在添加事件属性时,需注意事件属性类型。如果事件属性类型为「数值型属性」,需要在上传数据时修改数据类型为「数值型」,并且在诸葛io后台埋点管理中修改为「数值型」。
2.4 trackCount
- eventName \ 事件名称
- props \ 事件属性
zhuge.trackCount('like', { '商品名称': '华为P30', '商品分类': '3C' })
trackCount是用来记录事件触发的次数,适用于频繁触发事件的场景比如视频直播点赞。
函数连续触发时会记录执行的次数,当函数停止执行会等待集成sdk设置的countDuration时间,超时后会上传事件和事件属性,通过trackCount函数上传的事件会附带两个自定义属性count和countTime,分别代表执行的次数和连续触发持续的时间。
注意 函数执行的过程中如果事件名称和事件属性发生变化trackCount函数会立刻上传上次的事件和属性,然后重新开始计数。
2.5 trackRevenue(props)
- props \ 收入数据属性
收入数据采集 使用示例:{ price: 0, // <number>价格 productID: null, // <string>商品id productQuantity: 0, // <number>商品数量 revenueType: null // <string>收入类别 }
price和productQuantity属性,只能为数值类型。zhuge.trackRevenue({ price: 2000, productID: 'product001', productQuantity: 2, revenueType: '3c' })