Skip to main content

模块列表

SDK 可以通过集成不同的模块实现功能的自定义,在 GrowingIO 的 SDK 中,已经有多个模块功能已经从代码中分离出来,后续将会独立出更多的模块。

已有模块功能

名称说明文档
数据库-database数据库为sqlite,默认集成在埋点SDK中数据库模块
网络库-okhttp使用okhttp请求网络,sdk默认网络模块网络请求库
网络库-urlconnnection使用urlconnnection请求网络网络请求库
数据加密-encoder使用 snappy 加密上报的事件数据,需要集成生效数据加密
设备标识符-oaid提供采集 OAID 的能力,需要集成生效OAID
混合开发数据收集-hybrid混合开发模式,默认集成在埋点SDK中,需要手动注入(无埋点中自动注入)H5混合模块
数据传输格式-protobuf使用protobuf格式保存和上传事件数据,sdk 默认Protobuf 模块
数据传输格式-json使用json格式保存和上传事件数据,需要集成生效JSON格式模块
无埋点圈选-circler基于无埋点的圈选插件,默认集成在无埋点SDK中圈选模块
数据调试-debugger数据调试Mobile Debugger,默认集成在无埋点/埋点SDK中Debugger 模块
广告-ads添加激活事件和DeepLink功能,需要集成生效广告模块
性能监控-apm用于监控应用的性能和错误分析,需要集成生效性能监控模块
flutter当应用需要使用Growingio Flutter SDK,需要在原生SDK中集成生效Flutter模块
A/B分组实验-abtest当应用需要使用A/B分组实验功能时,需要在原生SDK中集成生效A/B分组测试模块
系统信息-platform当应用需要进一步区分系统时(如Android、Harmony等),需要在原生SDK中集成生效系统信息模块
更多开发中...

注册模块代码

初始化配置时集成模块

// 初始化SDK时,可以注册对应模块
GrowingAutotracker.startWithConfiguration(this,
new AutotrackConfiguration("accountId", "urlScheme")
//...
.addPreloadComponent(<模块对象>, <模块配置>)
// 或者
.addPreloadComponent(<模块对象>)

);

运行时注册模块

所有的模块都可以在运行中注册替换。

GrowingAutotracker.get().registerComponent(<模块对象>, <模块配置>)
// 或者
GrowingAutotracker.get().registerComponent(<模块对象>)