uniapp 埋点SDK
最后更新于
最后更新于
GitHub Demo: https://github.com/growingio/growing-sdk-uniapp
uniapp 全版本支持
App适配最低系统版本:iOS 8及以上、Android 4.2-10
下载该仓库代码,将release 文件夹下 GrowingIO-Track 添加至工程的 nativeplugins 目录下
2. HBuilderX中,在对应工程的 manifest.json 中选择“App原生插件配置”,本地插件[选择本地插件],勾选 GrowingIO-Track 插件,并将必填字段进行填写
growing_android_account_id 即项目id, 可在官网查看
growing_ios_account_id 即项目id, 可在官网查看
growing_android_url_scheme 即android项目的 urlscheme
其余字段均为可选字段, 除debug字段外(默认为非debug模式), 服务器地址配置默认都是当前SaaS地址(无需额外配置)
3. HBuilderX中配置唤醒 urlscheme
manifest.json中选择“App常用其它设置”
Android设置中UrlSchemes配置官网提供的android项目urlscheme
iOS设置中UrlSchemes配置官网提供的ios项目urlscheme
4. uniapp 工程中的代码书写示例
插件位于 release 文件夹下。 该插件用于 HBuilder 云打包使用,而且仅在云打包情况下,manifest.json 下的参数设置才能在app中生效。
若是自己使用工具(Android Studio 或者 Xcode)打包可以参考 UniPlugin-Android 和 UniPlugin-iOS 两个例子进行集成。
该插件用于 HBuilder 云打包使用,而且仅在云打包情况下,manifest.json 下的参数设置才能在app中生效。
若是自己使用工具(Android Studio 或者 Xcode)打包可以参考如下:
两种方式:一种为依赖 Android Module 模式,可参考示例代码 app 中查看,另一种引入 aar 包,可参考示例代码 app2 中查看。
在您的Android Studio 项目中导入 uniplugin_growingio 模块;
在示例app 模块的 build.gradle 中添加模块
3. 在 uniplugin_growingio
模块的 GrowingIOTrackAppProxy
类里面进行 growingIo sdk 的初始化,具体可以参考GrowingIO sdk 文档
4. 在示例 app 模块下的 assets 的 dcloud_uniplugins.json 中添加插件
5. 最后在您的vue文件中调用
6. 最后根据官方调用原生插件的过程,将通过 HBuilderX 发行的 www 文件夹覆盖到示例 app 模块下的 www 后就可以运行查看结果。 官方插件调试教程
具体可以参考示例 app2 下的配置
在 您的项目的 libs 下放入 growingio-uniplugin.aar
包
在 build.gradle
添加依赖
3. 在 AndroidManifest.xml
中配置项目
更多配置对应表
growing_android_account_id
setDeviceId
growing_android_url_scheme
setURLScheme
growing_android_debug
setDebugMode
growing_channel
setChannel
growing_zone
setZone
growing_gta_host
setGtaHost
growing_data_host
setDataHost
growing_report_host
setReportHost
growing_ws_host
setWsHost
growing_tracker_host
setTrackerHost
growing_tracker_rnmode
setRnMode
4. 在 assets 的 dcloud_uniplugins.json 中添加插件
5. 最后可以通过运行 app2 例子来查看结果。
采集自定义事件 eventId
,该事件的属性信息属于事件级变量。
在添加所需要发送的事件代码之前,需要在打点管理用户界面配置事件以及事件级变量eventLevelVariable
。
参数说明:
参数名称
参数类型
必填
说明
eventId
String
是
事件标识符
eventLevelVariable
Object
否
事件发生时所伴随的维度信息
参数限制条件:
参数违反以下条件将不发送数据,调用后请验证数据是否发送,事件类型t
为cstm
。
参数名称
限制条件
eventId
非空,长度限制小于等于50;
eventLevelVariable
非空,长度限制小于等于100(eventLevelVariable.length()<=100
);
eventLevelVariable
内部不允许嵌套 Object;
eventLevelVariable
Object 中的 key
长度限制小于等于50,value
长度限制小等于1000。
检验数据发送日志示例:
注意 t
等于 cstm
字段,表示自定义事件发送成功,只需注意 var
、n
、num
字段,其它字段无需仔细验证。
发送一个转化信息用于高级归因分析,在添加代码之前必须在打点管理界面上声明转化变量。
转化变量是一种非常强大的变量类型,主要是为了归因而用,比如访问渠道、站外搜索关键词、站内搜索关键词等等。在 GrowingIO 里面可以定制变量的归因方式和持久性范围。
参数说明:
参数名
类型
是否必填
描述
conversionVariables
Object
是
转化级属性
参数限制条件:
参数名称
限制条件
conversionVariables
非空,键值对个数小于等于100;
conversionVariables
内部不允许含有Object
嵌套;
conversionVariables
Object 中的 key
长度限制小于等于50,value
长度限制小等于1000。
检验数据发送日志示例:
注意 t
等于evar
字段,表示自定义事件发送成功,只需注意 var
字段,其它字段无需仔细验证。
设置用户自身属性相关的属性信息,比如用户姓名、邮件地址、信用等级等。
在添加代码之前必须在打点管理界面上声明用户变量。
参数说明:
参数名
类型
是否必填
描述
peopleVariables
Object
是
用户属性
参数限制条件:
参数名称
限制条件
peopleVariables
非空,长度限制小于等于100(peopleVariables.length()<=100
);
peopleVariables
内部不允许含有JSONObject
或者;
peopleVariables
Object 中的 key
长度限制小于等于50,value
长度限制小等于1000。
检验数据发送日志示例:
注意 t
等于ppl
字段,表示用户变量发送成功,只需注意 var
字段,其它字段无需仔细验证。
把 GrowingIO 识别的访问用户跟应用自身的注册用户做关联,用以登录用户行为分析。
参数说明:
参数名称
参数类型
必填
说明
userId
String
是
登录用户Id,长度限制小于等于1000;
如果值为空则清空了登录用户变量,不建议这么用,
请使用 clearUserId 清除登录用户变量。
注:您的 App 每次用户升级版本时无需重新登录的话,建议在用户每次升级App 版本后初次访问时重新调用上述 setUserId 方法。
当访问用户跟注册用户关联后,之后触发的行为会绑定到该注册用户上。如果有需要解除绑定,比如用户退出登录后,可以通过该函数解决绑定。
示例
当用户未登录时,定义用户属性变量,也可用于A/B测试上传标签。
参数说明:
参数名称
参数类型
必填
说明
visitorVar
Object
是
不可使用嵌套的JSONObject
对象,即为JSONObject中不可以放入JSONObject
或者JSONArray
;
key 长度限制小于等于50,value长度限制小等于1000,值不能为空串,也就是""。
检验数据发送日志示例:
注意 t
等于vstr
字段,表示访问用户变量发送成功,其它字段无需仔细验证。
添加代码之后,请先Clean项目,然后再进行编译,并在您的 App 安装了 SDK 后重新启动几次 App,保证行为采集数据自动发送给 GrowingIO,以便顺利完成检测。
如果您的 uniapp 应用会被分别打包成新的 Android 和 iOS APP,则需要分别创建Android 和 iOS应用。
在GrowingIO平台的应用创建页面继续完成应用创建的数据检测,检测成功后应用创建成功。
了解GrowingIO平台数据采集类型请参考数据模型。
GrowingIO为您提供多种验证SDK是否正常采集数据的方式:
方式二:在SDK中设置了Debug模式后,在IDE编译器控制台查看数据采集日志。