功能插件总览
在 HarmonyOS App 的 main.ts 中先调用 gdp('registerPlugins', plugins),再调用 gdp('init', ...)。
gdp('registerPlugins', [{ name: 'gioEventAutoTracking' }])
gdp('init', 'account-id', 'data-source-id', {
uniVue: app,
})
内置插件
| 插件名 | 说明 |
|---|---|
gioEventAutoTracking | 无埋点采集,支持模板点击、控件变更和原生 TabBar 点击 |
客户插件
业务可以注册自定义插件。首次 init 通过同步校验并启动异步初始化后,SDK 按注册顺序调用客户插件的 install(growingio),传入 GioPluginRuntime 实例。此时 SDK 可能仍在恢复本地状态。需要等 SDK 就绪的插件逻辑可等待 growingio.whenReady() 返回 true。
import gdp, { type GioPlugin } from 'gio-uniapp-sdk'
// uni_modules 接入时从 '@/uni_modules/gio-uniapp-autotracker/index.js' 导入
const myPlugin: GioPlugin = {
name: 'myPlugin',
install(growingio) {
// 通过内部实例扩展 SDK 能力
},
}
gdp('registerPlugins', [myPlugin])
约束:
- 客户插件必须提供非空
name和install函数。 - 插件名不能重复,重复名称会使整批注册失败。
- 单个客户插件
install抛错不会阻止其他插件安装,仅输出告警。 - 页面代码仍只能调用
gdp();GioPluginRuntime只会作为显式注册插件的安装参数出现。
插件文档
- 无埋点采集:插件注册与 Vite 构建配置、采集范围、隐私规则、插桩边界