SDK FAQ

主要介绍方舟 SDK 集成中的常见问题以及特殊客户自研 SDK 的注意事项。若不包含您遇到的情况,可以申请加入易观开发者 QQ 交流群:474086078。描述清楚现象,会有技术同学协助定位问题并帮助解决。

易观方舟 SDK FAQ

介绍

Q1. 易观方舟目前支持哪些平台?

支持 Android、iOS、JS 和微信小程序平台的应用,详见 SDK 指南

Q2. 不同平台的应用是否可以集成到一个项目中,使用一个 AppKey ?

方舟本身支持,但是否需要集成到要给项目中,需要根据不同的业务需要来决定,可以参考《分平台上报数据 vs 跨平台打通》

Q3. 易观方舟当前支持哪种埋点方式?代码埋点和无埋点有什么区别?

方舟支持客户端埋点、服务埋点、工具导入全端数据接入,其中客户端埋点,支持代码埋点和可视化埋点两种方式,更多可参考博客埋点系列文章

Q4. 从集成到看到回数通常需要多长时间?

调试阶段,开启 Debug 模式可以实时查看回传数据。

应用正式发布后,关闭 Debug 模式,数据会在应用打开关闭时上传,数据结果会实时展现,在事件分析中可以按分钟、按小时查看,最多延迟 10 分钟;按日汇总当天数据,最多会延迟 2 个小时。

Q5. 是否支持 Hydrid 应用的监测?Hydrid APP 中 H5 页面的数据会统计在 APP 里还是网页里?

支持。

APP 内嵌 H5,需要在相应的 H5 页面埋点,数据会同样通过 SDK 上传,计入到 APP 的行为数据中。

Q6. Debug 模式有什么作用?

Debug 模式下,SDK 会记录很多调试信息,日志会实时上传,更方便验证集成的正确性。

Debug 模式:

0:表示关闭 Debug 模式

1:表示打开 Debug 模式,但该模式下发送的数据仅用于调试,不计入平台数据统计

2:表示打开 Debug 模式,该模式下发送的数据可计入平台数据统计

Q7. SDK 数据上传机制是什么样的?

无论 Debug 和非 Debug 模式,都是实时上传。

Q8. 易观方舟的 SDK 有多大?

Android SDK ≈280KB

iOS SDK ≈10M

Q9. 集成后 SDK 后会造成应用缓慢,影响用户体验吗?

不会。

Q10. 测试数据是否可以清除呢?

目前不支持单独的清除测试数据,但是可以通过新建测试应用,来验证集成过程,在正式发布之前,新建的正式应用,替换相应的 AppKey 即可。

Q11. 易观SDK是否会和其他SDK冲突?

理论上不会冲突,但是不排除与其他SDK文件命名冲突,导致的编译失败。如发现某SDK调用键盘后应用崩溃,后删除某SDK后正常。如遇到类似问题,请尝试使用Demo测试是否正常,如有问题请和我们联系。

集成后

Q1. 集成后怎么样验证集成是否正确?

方舟实时日志模块正在开发中,当前可以通过事件分析或者分群模块根据条件选定测试的设备,查看设备上的用户行为序列。

Q2. 客户环境端口限制导致上报失败。

解决办法:数据上报地址由原来的4089或者8089,调整到http 80端口或https 443端口

Q3. Web页面中发现丢失某一个事件的解决办法。

解决办法:优先同步加载SDK,弊端在弱网络环境下,可能会有较长的加载时间影响客户体验建,议换服务端SDK:如Java、PHP等SDK 对某一些重要事件进行单独上报。

Q4. 检查客户端已经上报成功,但是在方舟系统中没有查找到该数据。

解决办法:

1. 点击 “管理”-“元事件”-“接入更多数据”-“错误数据日志”中查看是否有相关错入日志信息,并根据相关提示进行修改。 注意:错误数据日志需要在方舟V4.2.2版本以后才可以使用

2.打开Web或者App的Debug模式,找到该事件并点击,并在相应的控制台中查看Log日志搜索analysys,查看是否发成功或查看错误原因。

一般错误原因:

1.上报的数据中存在null数据

2.事件名称为中文

3.value不合符支持类型

Q5. 集成JS SDK后发现页面数据不上报、白屏等显现。

1.请检查SDK初始化方法,同步集成或者异步集成在同一页面只能选择一种方式集成 2.请勿修改初始化中的相关业务逻辑,可能会导致SDK初始化失败。

自研 SDK 注意事项

若客户对前端接入第三方 SDK 有严格限制和顾虑,SDK 可自研,但自研需要注意以下几项:

1. 数据模型需保持一致

易观方舟包括数据采集、接收、处理、查询等模块,这些模块通过易观的 Common Data 数据模型一以贯之。若 SDK 自研,需对方舟分析平台的数据模型、数据链路有较深刻的认知,以便适配后续的方舟其他模块的升级。否则,可能导致处理和分析模块不可用。

2. 需处理 SDK 与数据采集模块的接收端服务器的交互

处理交互原因:设备终端通过 SDK 采集并上报数据时,服务端会根据各种情况(如设备终端网络不佳、服务端数据压力大等),进行策略调整,并发送至终端,SDK 据此快速响应。 策略如:上行数据频率策略,失败重试策略,缓存数目策略,限制策略等

3. 需验证上报数据的合法性

数据采集时 SDK 上报的数据,须符合约定,否则服务器会将进行丢弃。 约定主要是基于字段和模型的校验,需根据方舟版本迭代。

4. 需确保兼容和适配众多的机型和版本

SDK 数据采集需要适配兼容众多机型和版本,故而研发成本较高,周期较长,需要持续投入,会严重拖慢公司数字化建设周期。

5. 可视化埋点功能需要与方舟采集服务器交互

方舟 SDK 实现了可视化埋点,可视化埋点的配置数据要实时从服务端获取。SDK 上报数据时,数据采集依赖配置文件和方舟数据模型。