文档目录
SDK 功能清单
一级功能 |
二级功能 |
具体功能 / 描述 |
标识用户 |
自动标识匿名用户 |
自动使用设备 ID 标识匿名用户 |
支持替换为自定义的匿名 ID |
标识登录用户 |
使用登录 ID 标识登录用户 |
设置用户属性 |
|
采集数据 |
自动采集浏览器信息 |
自动采集默认的设备制造商,操作系统、浏览器版本等 |
全埋点 |
Web 浏览页面 |
Web 元素点击 |
Web 视区停留 |
公共属性 |
静态公共属性 |
动态公共属性 |
清除公共属性 |
自定义埋点 |
自定义代码埋点 |
上报数据 |
自动上报数据 |
SDK 在满足一定条件后自动发送事件数据 |
调试功能 |
调试模式 |
开启 / 关闭调试模式 |
调试日志 |
显示 / 关闭调试日志 |
可视化及分析 |
可视化全埋点 |
通过可视化的方式在将关键事件筛选出来,便于后续分析 |
Web 点击分析 |
直观展示用户在 Web 页面上的点击情况 |
DeepLink |
创建 DeepLink 用于 App 推广 |
高级功能 |
数据加密 |
数据加密之后再进行存储和发送 |
App 与 H5 打通 |
打通后 H5 的事件数据由 App SDK 来存储和发送 |
合规 |
支持合规要求 |
SDK 采集控制 |
控制 SDK 开启或关闭 |
基本原理
Web SDK 是用原生 JavaScript 语言编写,没有使用最新的 ES6 特性,理论支持 IE6+ 的浏览器。
Web SDK 的原理主要是通过原生 JavaScript 代码监控页面的点击等操作,并自动获取屏幕宽高等属性,然后发送请求。因为 Web SDK 是面向传统的浏览器环境,与框架没有关系,也就是说必须且只能在 浏览器上运行的网页中 使用 Web SDK。这里有几个特点:
- 能支持 JavaScript 语言的环境
- 能支持 Web 浏览器的环境
因为要满足上述 Web + JavaScript 的环境,所以我们称 SDK 为 Web JS SDK,简称 Web SDK。
插件架构
由于 Web SDK 中有上千个功能点,并且功能点仍在持续新增,功能点数量足够大且存在一个功能有多种互斥方案,之前的 全能 SDK(所有功能都集成在一起)正在逐步转变为插件架构方式。理论上后续所有功能都将通过插件实现,以前的功能也在逐步拆解为插件。
鉴于插件的重要意义,建议集成 SDK 时了解现有的 插件集成 目录,每个插件都会有 readme 使用说明。
SDK 支持范围
客户端框架:Vue2、Vue3、React、Angular
服务端框架:next.js、nuxt.js
建站系统:WordPress、Shopify、Ghost
桌面框架:Electron
对于以上各种框架/系统,Web SDK 不支持框架/系统本身,Web SDK 不会为框架/系统本身量身打造支持性。Web SDK 支持的是标准的浏览器,只要页面能加载静态资源(例如加载 jQuery)就可以支持。
浏览器支持范围
浏览器 |
IE6 |
IE7 |
IE8 |
IE9 |
IE10 |
IE11 |
Edge |
FireFox |
Safari |
Chrome |
Opera |
支持 |
 |
 |
 |
 |
 |
 |
 |
 |
 |
 |
 |
注意:
- 上面基本原理中已经表示过,只要是标准的浏览器环境,能支持原生 JavaScript(不需要 ES6)就可以使用。跟操作系统、平台类型、浏览器类型、浏览器版本无关。
- 不保证一些小众浏览器没有实现标准的 JavaScript,导致一些属性有差异。这时候就会跟操作系统、平台类型、浏览器类型、浏览器版本有关。
- 部分功能需要相对较新的浏览器才能支持,例如批量发送需要 LocalStorage 存储。
- 如果一些功能(例如批量发送)在版本浏览器不支持的话,SDK 不会报错,而是自动降级(使用图片发送),或者去除这个功能。