Flutter阿里云应用实时监控插件alibabacloud_rum_flutter_plugin的使用

Flutter阿里云应用实时监控插件alibabacloud_rum_flutter_plugin的使用

Alibaba Cloud RUM SDK for Flutter

package pub likes popularity pub points
alibabacloud_rum_flutter_plugin

阿里云用户体验监控 RUM 官方 Flutter 插件,当前支持 Android、iOS 平台。

插件集成

1. 添加依赖

pubspec.yaml 文件中添加以下依赖:

dependencies:
  flutter:
    sdk: flutter

  alibabacloud_rum_flutter_plugin: ^0.2.2

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 start success 即表示 SDK 接入成功。示例如下:

flutter: [2024-05-27 16:43:39][INFO][AlibabaCloudRUM]: alibabacloud_rum_flutter_plugin start success

更多关于Flutter阿里云应用实时监控插件alibabacloud_rum_flutter_plugin的使用的实战教程也可以访问 https://www.itying.com/category-92-b0.html

1 回复

更多关于Flutter阿里云应用实时监控插件alibabacloud_rum_flutter_plugin的使用的实战系列教程也可以访问 https://www.itying.com/category-92-b0.html


当然,以下是一个关于如何在Flutter应用中使用alibabacloud_rum_flutter_plugin插件进行实时监控的示例代码。这个插件允许你将应用的性能数据、崩溃信息等实时上报到阿里云的应用实时监控(RUM)服务。

首先,确保你已经在pubspec.yaml文件中添加了alibabacloud_rum_flutter_plugin依赖:

dependencies:
  flutter:
    sdk: flutter
  alibabacloud_rum_flutter_plugin: ^最新版本号  # 请替换为最新的版本号

然后,运行flutter pub get来获取依赖。

接下来,在你的Flutter应用中初始化并配置该插件。通常,你会在应用的入口文件(如main.dart)中进行这些操作。

import 'package:flutter/material.dart';
import 'package:alibabacloud_rum_flutter_plugin/alibabacloud_rum_flutter_plugin.dart';

void main() {
  // 初始化插件
  AlibabaCloudRUMFlutterPlugin.init(
    appKey: '你的AppKey',  // 替换为你的AppKey
    endpoint: '你的RUM服务域名',  // 替换为你的RUM服务域名,例如 'https://rum-cn-hangzhou.aliyuncs.com'
  );

  runApp(MyApp());
}

class MyApp extends StatelessWidget {
  @override
  Widget build(BuildContext context) {
    return MaterialApp(
      title: 'Flutter Demo',
      theme: ThemeData(
        primarySwatch: Colors.blue,
      ),
      home: MyHomePage(),
    );
  }
}

class MyHomePage extends StatefulWidget {
  @override
  _MyHomePageState createState() => _MyHomePageState();
}

class _MyHomePageState extends State<MyHomePage> {
  @override
  void initState() {
    super.initState();

    // 开始页面视图追踪
    AlibabaCloudRUMFlutterPlugin.startPageView('Home Page');
  }

  @override
  void dispose() {
    // 结束页面视图追踪
    AlibabaCloudRUMFlutterPlugin.stopPageView('Home Page');
    super.dispose();
  }

  @override
  Widget build(BuildContext context) {
    return Scaffold(
      appBar: AppBar(
        title: Text('Flutter Demo Home Page'),
      ),
      body: Center(
        child: Column(
          mainAxisAlignment: MainAxisAlignment.center,
          children: <Widget>[
            Text(
              'You have pushed the button this many times:',
            ),
            Text(
              '0',
              style: Theme.of(context).textTheme.headline4,
            ),
          ],
        ),
      ),
      floatingActionButton: FloatingActionButton(
        onPressed: () {
          // 自定义事件追踪
          AlibabaCloudRUMFlutterPlugin.trackEvent(
            eventId: 'button_click',
            eventAttributes: <String, dynamic>{
              'button_name': 'FloatingActionButton',
            },
          );

          // 模拟一个异常上报
          try {
            throw Exception('This is a simulated exception');
          } catch (e, stack) {
            AlibabaCloudRUMFlutterPlugin.reportError(error: e, stackTrace: stack);
          }
        },
        tooltip: 'Increment',
        child: Icon(Icons.add),
      ), // This trailing comma makes auto-formatting nicer for build methods.
    );
  }
}

在这个示例中,我们完成了以下几步:

  1. 初始化插件:在main函数中调用AlibabaCloudRUMFlutterPlugin.init方法来初始化插件,并传入你的AppKey和RUM服务域名。

  2. 页面视图追踪:在MyHomePage的状态管理中,使用AlibabaCloudRUMFlutterPlugin.startPageViewAlibabaCloudRUMFlutterPlugin.stopPageView方法来开始和结束页面视图的追踪。

  3. 自定义事件追踪:在FloatingActionButton的点击事件中,调用AlibabaCloudRUMFlutterPlugin.trackEvent方法来追踪自定义事件。

  4. 异常上报:在捕获到异常时,调用AlibabaCloudRUMFlutterPlugin.reportError方法来上报异常信息。

请确保你已经正确配置了阿里云RUM服务,并且你的AppKey和RUM服务域名是有效的。这样,你的Flutter应用就能将实时监控数据上报到阿里云RUM服务了。

回到顶部