Flutter数据分析插件cux_analytics_sdk的使用

Flutter数据分析插件cux_analytics_sdk的使用

特性

CUX Analytics SDK 可以与 Flutter(支持 Android 和 iOS)应用程序集成,自动检测用户活动。通过添加几行代码,您可以监控和分析整个应用程序,了解用户如何使用它。此类监控的结果会在 CUX Analytics 仪表板中展示。

开始使用

在使用 CUX Analytics SDK 之前,您首先需要创建一个 CUX 账户:https://app.cux.io

使用方法

Android 需要检查网络权限

以下是一个简单的示例,展示如何初始化并使用 CUX Analytics SDK:

void main() {
  print("CuxSDK: main()");
  runApp(const MyApp());
}

class MyApp extends StatelessWidget {
  const MyApp({super.key});

  @override
  Widget build(BuildContext context) {
    print("CuxSDK: MyApp build()");

    // 初始化 CUX Analytics SDK
    CuxAnalytics.init(
        context, '1428112091.0.46456300.1480349278.583c565e0fc5d');
    return AnalyticsWidget(
      child: MaterialApp(
          title: 'Flutter CUX Demo',
          home: const HomeWidget(),
      navigatorObservers: [
        // 添加导航观察器以跟踪页面导航
        CuxAnalytics.createNavigationObserver(context, this)
      ],
    ),
    );
  }
}

如果需要用户同意收集数据,可以先初始化禁用的 SDK,然后在确认允许收集数据后开始收集:

// 初始化禁用的 SDK
CuxAnalytics.init(context, {token}, needConfirmToStart: true);

// 开始收集数据
CuxAnalytics.resumeCollectingData();

如果您使用的是 go_router,则需要添加 RouterNavigationListener

@override
Widget build(BuildContext context) {
  return MaterialApp.router(
    routerConfig: _router,
    debugShowCheckedModeBanner: false,
    onNavigationNotification:
    RouterNavigationListener(rootWidget: this).onNavigationNotification,
  );
}

如果您的应用页面不是 MaterialAppScaffold,为了更好的导航可观察性,建议将屏幕的部件包装在一个具有唯一目的地名称的 DestinationWidget 中:

@override
Widget build(BuildContext context) {
  return DestinationWidget(
      destinationName: "Destination_$name",
      child: Column(...

您还可以对包含敏感信息的部分屏幕进行遮罩处理。最佳实践是不仅遮罩敏感信息,还要遮罩更大的区域,尤其是滚动屏幕:

import 'package:cux_analytics_sdk/masking_widget.dart';

MaskingWidget(
  child: Padding(
  padding: EdgeInsets.all(16.0),
  child: Text('Masked text'),
)),

如果您需要停止收集数据,可以调用以下方法:

CuxAnalytics.stopCollectingData();

如果您初始化了禁用的 SDK 或者已经停止了数据收集,可以通过以下方法恢复数据收集:

CuxAnalytics.resumeCollectingData();

更多关于Flutter数据分析插件cux_analytics_sdk的使用的实战教程也可以访问 https://www.itying.com/category-92-b0.html

1 回复

更多关于Flutter数据分析插件cux_analytics_sdk的使用的实战系列教程也可以访问 https://www.itying.com/category-92-b0.html


cux_analytics_sdk 是一个用于 Flutter 应用的数据分析 SDK。它通常用于收集用户行为数据、事件跟踪、用户属性等信息,并将这些数据发送到后端服务器进行分析。以下是使用 cux_analytics_sdk 的基本步骤:

1. 添加依赖

首先,你需要在 pubspec.yaml 文件中添加 cux_analytics_sdk 依赖:

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

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

2. 初始化 SDK

在应用的入口处(通常是 main.dart 文件),初始化 cux_analytics_sdk

import 'package:cux_analytics_sdk/cux_analytics_sdk.dart';

void main() async {
  WidgetsFlutterBinding.ensureInitialized();
  
  // 初始化 SDK
  await CUXAnalyticsSdk.init(
    appKey: 'your_app_key',  // 替换为你的 App Key
    channel: 'your_channel', // 替换为你的渠道
    debugMode: true,         // 是否开启调试模式
  );

  runApp(MyApp());
}

3. 设置用户信息

你可以设置用户的基本信息,例如用户ID、用户属性等:

// 设置用户ID
CUXAnalyticsSdk.setUserId('user_123');

// 设置用户属性
CUXAnalyticsSdk.setUserProfile({
  'name': 'John Doe',
  'age': 30,
  'gender': 'male',
});

4. 跟踪事件

你可以使用 CUXAnalyticsSdk.trackEvent 方法来跟踪用户行为事件:

// 跟踪自定义事件
CUXAnalyticsSdk.trackEvent('button_click', {
  'button_name': 'login_button',
  'page': 'login_page',
});

5. 页面跟踪

你可以使用 CUXAnalyticsSdk.trackPageView 方法来跟踪页面访问:

// 跟踪页面访问
CUXAnalyticsSdk.trackPageView('home_page');

6. 设置公共属性

你可以设置一些公共属性,这些属性会附加到每个事件中:

// 设置公共属性
CUXAnalyticsSdk.setCommonProperties({
  'app_version': '1.0.0',
  'platform': 'Android',
});

7. 调试与日志

在调试模式下,你可以查看 SDK 的日志输出,以便更好地了解数据收集和发送的情况。

8. 数据发送

SDK 会自动将收集到的数据发送到服务器。你也可以手动触发数据发送:

// 手动触发数据发送
CUXAnalyticsSdk.flush();
回到顶部