Flutter 应用的可观测链路天然跨层,所以 SDK 采用 Dart 采集层与 Native SDK 分工的结构。
Dart 层掌握的是 Flutter 语义:Widget、Route、Zone、Dio 以及业务状态。因此 Dart 采集层负责保留这些语义信息,例如 Dart Zone 异常、Route 生命周期、Widget 点击、Dio 请求和主 Isolate 阻塞。
Android、iOS、HarmonyOS 的 Native SDK 则更适合承接平台侧上报、网络追踪配置和最终的数据落地,把标准化事件送入统一的会话视角。
这种分工在复杂 Flutter 场景里价值更明显:Flutter 侧保留「用户做了什么、页面处于什么状态、内容如何刷新」的语义,Native 和 RUM 侧负责把这些数据统一关联。具体实现上,alibabacloud_rum_flutter_plugin 在 Dart 层采集页面、网络、Action、LongTask、异常、资源快照和业务自定义字段等上下文,再交由原生 RUM SDK 上报和关联。




