模块列表
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(<模块对象>)
📄️ 核心模块
核心模块是 GrowingIO 中必须包含的模块功能,它们和核心库组成了SDK最基本的功能。
📄️ H5混合模块
应用内嵌H5页面如果也需要进行数据采集,H5页面需要集成 Web JS SDK
📄️ 加密模块
GrowingIO SDK 加密模块默认使用 snappy 数据压缩和 xor 简单加密方式,作用于数据网络上传的阶段。
📄️ Json 模块
GrowingIO SDK 数据模块默认使用 Google Protobuf 格式保存和上传事件数据。如需要使用Json格式保存和上传事件数据,需要集成本模块。
📄️ OAID 模块
在 Android 10 版本中,非系统应用无法获取 IMEI。加上以前 Android 版本已经对 MAC 地址, AndroidID 的获取做了限制, 在 Android10 中缺少一种唯一标记设备的标识符。 在海外, Google 推荐使用 Google 的广告 ID 作为广告的唯一识别符,在国内移动安全联盟MSA 联合各大手机制造商推出了 OAID 的概念, 作为唯一广告标识符。OAID 的准确性和覆盖率均满足广告场景的使用需求。
📄️ 圈选模块
圈选,是利用GrowingIO进行无埋点数据分析之前的数据定义过程。您需要根据业务需求,将需要分析的关键事件通过可视化地方式在您的产品界面中定义出来,这个过程,就是圈选。
📄️ Debugger 模块
GrowingIO SDK 支持的 Mobile Debugger 工具 ,可对应用中集成的SDK事件发送进行调试和校验。
📄️ 广告模块
广告模块包括激活事件和深度链接(DeepLink),激活事件是当用户应用第一次打开时有且仅发一次的事件,深度链接是提供客户通过活动网页等形式提供App渠道的跳转和下载。
📄️ 性能监控模块
APM (Application Performance Management) 即应用性能管理,属于IT运维管理(ITOM)范畴。主要是针对企业关键业务的IT应用性能和用户体验的监测、优化,提高企业IT应用的可靠性和质量,保证用户得到良好的服务,降低IT总拥有成本(TCO)。
📄️ 数据转发模块
为了方便给已经集成了其他第三方厂商数据采集SDK的客户快速转入我们的采集SDK,我们提供了针对各个第三方的数据转发服务来作为一个过度的方案。
📄️ Flutter 模块
GrowingIO Flutter SDK Plugin 需要通过 MethodChannel 来与原生SDK进行通信,所以原生需要集成该 Flutter 模块来接收来自Flutter的消息或者发送消息到Flutter中。
📄️ A/B分组实验
分析云A/B实验产品能力,SDK侧配合提供A/B Test SDK。帮助开发者在应用程序中进行A/B测试,验证不同版本的功能效果。
📄️ 系统信息模块
GrowingIO SDK 默认系统为Android,通过系统信息模块可以进一步区分当前系统(目前仅支持Harmony)