Weex 埋点 SDK
GrowingIO 埋点 SDK 仅自动采集设备信息和您埋点内容数据。
支持版本
支持 Weex 0.16.0 以上,暂不支持低版本。
注意
Android 集成
1.添加 Android 原生 SDK 依赖
建议使用 Android Studio 打开项目中,
platforms
文件夹中的android
文件夹Weex 埋点 SDK 是在 Android 原生 SDK 上的扩展,参照 Android 埋点 SDK,集成步骤的 1~4,操作步骤完全一致。
2. 添加 SDK
命令行集成:
weexpack plugin add weex-growingio
手动集成:
在相应工程的build.gradle
文件的dependencies
中添加
compile 'com.growingio.android:vds-weex:0.3'
2. 重要配置
和 Android 埋点 SDK 一致,传送门。
iOS 集成
1. 添加 iOS 埋点 SDK 依赖
Weex埋点 SDK 是在 iOS 原生 SDK 上的扩展,请参照 iOS 埋点 SDK 集成步骤 1~3 ,操作完全一致。
2. 添加 SDK
命令行集成
weex plugin add weex-growingio
2. 手动集成 在podfile 中添加
pod 'WeexGrowingIO'
3. 命令行输入
pod update
2.重要配置
与原生混合开发的开发者可详细查看 重要配置文档,如果原生控件使用不多,只需关注如下配置即可:
自定义事件和变量API
对于用户行为,比如搜索、添加到购物车、购买等,我们可以很很容易的通过一行代码采集到这些事件,比如:
gio.track("purchase", 456, { item: '123' });
采集自定义事件
track(event);
event
为 JsonObject
,它的 key
必须为以下名称:
参数说明:
参数名称
参数类型
必填
说明
eventId
String
是
事件标识符
number
Number
否
事件的数值,没有number参数时,事件默认加一;
当出现number参数时,事件自增number的数值
eventLevelVariable
Object
否
事件发生时所伴随的维度信息
采集自定义事件 eventId
,该事件的属性信息属于事件级变量。
在添加所需要发送的事件代码之前,需要在打点管理用户界面配置事件以及事件级变量eventLevelVariable
。
参数限制条件:
参数违反以下条件将不发送数据,调用后请验证数据是否发送,事件类型t
为cstm
。
参数名称
限制条件
eventId
非空,长度限制小于等于50;
number
非空。
eventLevelVariable
非空,长度限制小于等于100(eventLevelVariable.length()<=100
);
eventLevelVariable
内部不允许嵌套 Object;
eventLevelVariable
Object 中的 key
长度限制小于等于50,value
长度限制小等于1000。
示例代码:
//获取 gio
var gio = weex.requireModule('GrowingIO');
gio.track({'eventId':'trackTest'});
gio.track({'eventId':'Test','number':65});
gio.track({'eventId':'Test','number':65,'eventLevelVariable':{'city':'dalian'}});
检验数据发送日志示例:
注意 t
等于 cstm
字段,表示自定义事件发送成功,只需注意 var
、n
、num
字段,其它字段无需仔细验证。
//展示 track 接口调用示例三日志内容
{
"s":"31e3aa14-5241-490c-821c-a741e9bf0f87",
// t 为事件类型, track 接口调用发送的事件类型为 cstm
"t":"cstm",
"tm":1532085495251,
"d":"com.growingio.android.test",
// n 为 eventId 参数携带的值
"n":"Test",
// var 为 eventLevelVariable 参数携带的值
"var":{
'city':'dalian'
},
"ptm":0,
// num 为 number 参数携带的值
"num":65,
"gesid":18,
"esid":0,
"u":"b6247b01-a31a-3bc6-a391-4c456888c1ee"
}
推荐您使用MobileDebugger,我们为您列举了应用场景和验证示例,请移步查看:cstm 事件验证。
设置转化变量
setEvar(conversionVariables);
发送一个转化信息用于高级归因分析,在添加代码之前必须在打点管理界面上声明转化变量。
转化变量是一种非常强大的变量类型,主要是为了归因而用,比如访问渠道、站外搜索关键词、站内搜索关键词等等。在 GrowingIO 里面可以定制变量的归因方式和持久性范围。
参数说明:
参数名
类型
是否必填
描述
conversionVariables
Object
是
转化级属性
参数限制条件:
参数名称
限制条件
conversionVariables
非空,键值对个数小于等于100;
conversionVariables
内部不允许含有Object
嵌套;
conversionVariables
Object 中的 key
长度限制小于等于50,value
长度限制小等于1000。
示例
//获取 gio
var gio = weex.requireModule('GrowingIO');
gio.setEvar({ "evarTest":111,
"campaignId":"1234567890",
"campaignOwner":"Li Si" })
检验数据发送日志示例:
注意 t
等于evar
字段,表示自定义事件发送成功,只需注意 var
字段,其它字段无需仔细验证。
{
"s":"e1c48845-dd60-4cf2-b1a5-a8e529d2188d",
// t 为事件类型, evar 为转化事件
"t":"evar",
"tm":1532338526083,
"d":"com.growingio.android.test",
"cs1":"GrowingIO",
// 转化变量
"var":{
"evarTest":111,
"campaignId":"1234567890",
"campaignOwner":"Li Si"
},
"gesid":300,
"esid":22
}
推荐您使用 MobileDebugger,我们为您列举了应用场景和验证示例,请移步查看: evar 事件验证
设置用户级变量
setPeopleVariable(peopleVariables);
设置用户自身属性相关的属性信息,比如用户姓名、邮件地址、信用等级等。
在添加代码之前必须在打点管理界面上声明用户变量。
参数说明:
参数名
类型
是否必填
描述
peopleVariables
Object
是
用户属性
参数限制条件:
参数名称
限制条件
peopleVariables
非空,长度限制小于等于100(peopleVariables.length()<=100
);
peopleVariables
内部不允许含有JSONObject
或者;
peopleVariables
Object 中的 key
长度限制小于等于50,value
长度限制小等于1000。
示例代码:
//获取 gio
var gio = weex.requireModule('GrowingIO');
gio.setPeopleVariable({ 'name': '玎玎', 'email': 'dingding@growingio.com' })
检验数据发送日志示例:
注意 t
等于ppl
字段,表示用户变量发送成功,只需注意 var
字段,其它字段无需仔细验证。
{
"s":"a35872af-13df-4479-90bc-25558d12328e",
// t 为事件类型, pvar 为发送用户变量事件
"t":"ppl",
"tm":1532339208991,
"d":"com.growingio.android.test",
"cs1":"GrowingIO",
// 用户变量
"var":{
'name': '玎玎',
'email': 'dingding@growingio.com'
},
"gesid":311,
"esid":0
}
推荐您使用 MobileDebugger,我们为您列举了应用场景和验证示例,请移步查看: ppl 事件验证
关联注册用户
setUserId(userId);
把 GrowingIO 识别的访问用户跟应用自身的注册用户做关联,用以登录用户行为分析。
参数说明:
参数名称
参数类型
必填
说明
userId
String
是
登录用户Id,长度限制小于等于1000;
如果值为空则清空了登录用户变量,不建议这么用,
请使用 clearUserId 清除登录用户变量。
示例代码:
//获取 gio
var gio = weex.requireModule('GrowingIO');
gio.setUserId('xiaoming');
注:您的 App 每次用户升级版本时无需重新登录的话,建议在用户每次升级App 版本后初次访问时重新调用上述 setUserId 方法。
推荐您使用 MobileDebugger,我们为您列举了应用场景和验证示例,请移步查看: 用户变量
解除关联注册用户
clearUserId();
当访问用户跟注册用户关联后,之后触发的行为会绑定到该注册用户上。如果有需要解除绑定,比如用户退出登录后,可以通过该函数解决绑定。
示例
//获取 gio
var gio = weex.requireModule('GrowingIO');
gio.clearUserId();
设置访问用户变量
当用户未登录时,定义用户属性变量,也可用于A/B测试上传标签。
setVisitor(visitorVar);
参数说明:
参数名称
参数类型
必填
说明
visitorVar
Object
是
不可使用嵌套的JSONObject
对象,即为JSONObject中不可以放入JSONObject
或者JSONArray
;
key 长度限制小于等于50,value长度限制小等于1000,值不能为空串,也就是""。
示例代码:
//获取 gio
var gio = weex.requireModule('GrowingIO');
gio.setVisitor({"gender":"male","age":21});
检验数据发送日志示例:
注意 t
等于vstr
字段,表示访问用户变量发送成功,其它字段无需仔细验证。
{
"s":"d334b4a1-57eb-4bf4-b426-64c1cce5a5c0",
// t 为事件类型, vstr 为发送访问用户变量事件
"t":"vstr",
"tm":1532341259134,
"d":"com.growingio.android.test",
"cs1":"GrowingIO",
//访问用户变量
"var":{
"gender":"male",
"age":21
},
"gesid":322,
"esid":0
}
验证 SDK 是否正常采集
验证内容:
验证打点事件是否发送
验证工具:
Android 查看日志: 设置 TestMode 和 Debug Mode :
GrowingIO.startWithConfiguration(this,new Configuration()
//BuildConfig.DEBUG 这样配置就不会上线忘记关闭
.setDebugMode(BuildConfig.DEBUG)
.setTestMode(true)
...
);
3. iOS 查看日志:iOS 在 AppDelegate 文件中配置:
[Growing setEnableLog:YES];
Last updated