alibabacloud_rum_flutter_plugin 2.3.6
alibabacloud_rum_flutter_plugin: ^2.3.6 copied to clipboard
The AlibabaCloud RUM Flutter plugin working with SDK for Android and iOS, assists in measuring the performance of the Flutter application.
Alibaba Cloud RUM SDK for Flutter #
| package | pub | likes | popularity | pub points |
|---|---|---|---|---|
| alibabacloud_rum_flutter_plugin |
阿里云用户体验监控 RUM 官方 Flutter 插件,当前支持 Android、iOS、HarmonyOS 平台。
插件集成 #
1. 添加依赖 #
dependencies:
flutter:
sdk: flutter
alibabacloud_rum_flutter_plugin: ^2.3.6
2. 在Flutter项目根目录执行以下命令 #
flutter packages get
3. iOS 在工程 ios 目录下执行以下命令 #
pod install
4. 初始化 SDK #
在 main.dart 文件中导入以下包:
import 'package:alibabacloud_rum_flutter_plugin/alibabacloud_rum_flutter_plugin.dart';
完成 SDK 的初始化:
void main() {
// 注释原有的 runApp() ⽅法
// runApp(MyApp());
// (必须)初始化SDK
AlibabaCloudRUM().start(MyApp());
// (可选)自定义用户名称
AlibabaCloudRUM().setUserName("xxxxxx");
}
5. 接入验证 #
Flutter 应用启动后,DEBUG CONSOLE 中返回 [INFO][AlibabaCloudRUM]: alibabacloud_rum_flutter_plugin initialized successfully 即表示 SDK 接入成功。示例如下:
flutter: [2024-05-27 16:43:39][INFO][AlibabaCloudRUM]: alibabacloud_rum_flutter_plugin initialized successfully
Action 自动采集 #
在应用根 Widget 中使用 AlibabaCloudActionCapture 包裹 MaterialApp:
class MyApp extends StatelessWidget {
const MyApp({Key? key}) : super(key: key);
@override
Widget build(BuildContext context) {
return AlibabaCloudActionCapture(
child: MaterialApp(
home: const HomePage(),
),
);
}
}
如果需要为指定 Widget 设置稳定的 Action 描述和自定义属性,使用 ActionAnnotation:
ActionAnnotation(
description: '提交订单',
attributes: const {
'page': 'checkout',
'business_action': 'submit_order',
},
child: ElevatedButton(
onPressed: submitOrder,
child: const Text('提交'),
),
)
description 会优先于 Widget 子树中的 Text 或 Semantics 文案。attributes 的值必须可被 jsonEncode 编码,且不应包含密码、Token 或个人信息等敏感数据。
Native SDK 集成 #
Flutter 项目在集成 Alibaba Cloud RUM SDK 时,除了需要集成 Flutter 插件之外,还需要分别集成 Android、iOS SDK。您可以参考下面的文档集成:
- Android:接入Android应用
- iOS:接入iOS应用
Flutter API 说明 #
| API | 说明 |
|---|---|
| start | 启动Flutter插件 |
| setUserName | 设置用户名称 |
| setCustomEvent | 设置自定义事件 |
| setCustomException | 设置自定义异常 |
| AlibabaCloudActionCapture | 自动采集 Flutter 用户操作 |
| ActionAnnotation | 为操作设置自定义描述和属性 |
| GestureCaptureInfo | 描述自定义 Widget 的采集方式 |
| CustomGestureElementCapture | 自定义 Widget 识别回调 |