Flutter电容聚合追踪插件aggregatori_capaci_sdk_tracking的使用

Flutter电容聚合追踪插件aggregatori_capaci_sdk_tracking的使用

开始使用

环境配置

  • flutter: “>=3.0.0”
  • sdk: ‘>=3.1.3 <4.0.0’

pubspec.yaml 文件中添加依赖:

dependencies:
  aggregatori_capaci_sdk_tracking: 0.0.1

初始化插件

首先确保在 main() 函数中初始化插件:

void main() async {
  WidgetsFlutterBinding.ensureInitialized(); // 确保Flutter绑定已初始化
  await AppTracking.instance.init('https://cardoctor-api-dev.aggregatoricapaci.com/'); // 初始化插件并传入基础URL
  runApp(const MyApp()); // 运行应用
}

跟踪登录事件

当用户成功登录后,可以调用 trackLogin 方法来跟踪登录事件:

AppTracking.instance.trackLogin('YOUR_USER_ID', ePassId: 'YOUR_EPASS_ID');

跟踪动态事件

可以通过传递一个包含事件信息的 Map 来跟踪动态事件:

var content = {
  'key1': 'value1',
  'key2': 'value2',
  'userId': 'your_user_id',
};

AppTracking.instance.trackEvent('your_event_name', content: content);

跟踪屏幕观察者

可以在 MaterialApp 中添加 navigatorObservers 来跟踪屏幕变化:

import 'package:aggregatori_capaci_sdk_tracking/aggregatori_capaci_sdk_tracking.dart';

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

  [@override](/user/override)
  Widget build(BuildContext context) {
    return MaterialApp(
      title: 'Flutter Demo',
      theme: ThemeData(
        primarySwatch: Colors.blue,
      ),
      home: const MyHomePage(title: 'Flutter Demo Home Page'),
      navigatorObservers: [CarDoctorObserver()], // 添加观察者
    );
  }
}

完整示例代码

以下是一个完整的示例代码,展示了如何使用该插件:

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

void main() async {
  WidgetsFlutterBinding.ensureInitialized();
  await AppTracking.instance.init('https://cardoctor-api-dev.aggregatoricapaci.com/'); // 初始化插件并传入基础URL
  runApp(const MyApp());
}

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

  [@override](/user/override)
  Widget build(BuildContext context) {
    return MaterialApp(
      title: 'Flutter Demo',
      theme: ThemeData(
        primarySwatch: Colors.blue,
      ),
      home: const MyHomePage(title: 'Flutter Demo Home Page'),
      navigatorObservers: [CarDoctorObserver()], // 添加观察者
    );
  }
}

class MyHomePage extends StatefulWidget {
  const MyHomePage({super.key, required this.title});

  final String title;

  [@override](/user/override)
  State<MyHomePage> createState() => _MyHomePageState();
}

class _MyHomePageState extends State<MyHomePage> {

  [@override](/user/override)
  void initState() {
    // 在初始化状态时跟踪登录事件
    AppTracking.instance.trackLogin('userId');
    super.initState();
  }

  [@override](/user/override)
  Widget build(BuildContext context) {
    return Scaffold(
      appBar: AppBar(
        title: Text(widget.title),
      ),
      body: Builder(builder: (context) {
        return Center(
          child: GestureDetector(
            onTap: () async {
              AppTracking.instance.trackButtonClick('open'); // 跟踪按钮点击事件
              AppTracking.instance.trackScroll('home', 0.7); // 跟踪滚动事件
            },
            child: const Icon(Icons.add),
          ),
        );
      }),
    );
  }
}

更多关于Flutter电容聚合追踪插件aggregatori_capaci_sdk_tracking的使用的实战教程也可以访问 https://www.itying.com/category-92-b0.html

1 回复

更多关于Flutter电容聚合追踪插件aggregatori_capaci_sdk_tracking的使用的实战系列教程也可以访问 https://www.itying.com/category-92-b0.html


aggregatori_capaci_sdk_tracking 是一个用于在 Flutter 应用中实现电容聚合追踪的插件。以下是使用该插件的基本步骤:

1. 添加依赖

首先,你需要在 pubspec.yaml 文件中添加 aggregatori_capaci_sdk_tracking 插件的依赖。

dependencies:
  flutter:
    sdk: flutter
  aggregatori_capaci_sdk_tracking: ^版本号

请将 ^版本号 替换为实际的插件版本号。你可以在 pub.dev 上查找最新的版本号。

2. 安装依赖

在添加依赖后,运行以下命令来安装插件:

flutter pub get

3. 导入插件

在你的 Dart 代码中导入 aggregatori_capaci_sdk_tracking 插件:

import 'package:aggregatori_capaci_sdk_tracking/aggregatori_capaci_sdk_tracking.dart';

4. 初始化插件

在使用插件之前,通常需要初始化它。你可以在 main.dart 或应用的初始化代码中进行初始化:

void main() async {
  WidgetsFlutterBinding.ensureInitialized();
  
  // 初始化插件
  await AggregatoriCapaciSdkTracking.initialize(
    apiKey: 'YOUR_API_KEY',
    // 其他配置参数
  );

  runApp(MyApp());
}

请将 YOUR_API_KEY 替换为你从 aggregatori_capaci_sdk_tracking 提供商处获取的 API 密钥。

5. 追踪事件

你可以使用插件提供的方法来追踪用户事件。例如:

AggregatoriCapaciSdkTracking.trackEvent(
  eventName: 'button_click',
  parameters: {
    'button_id': 'login_button',
    'user_id': '12345',
  },
);

eventName 是事件的名称,parameters 是一个包含事件参数的 Map

6. 设置用户属性

你还可以设置用户属性,以便在追踪时使用:

AggregatoriCapaciSdkTracking.setUserProperties(
  properties: {
    'name': 'John Doe',
    'email': 'john.doe@example.com',
    'age': 30,
  },
);

7. 处理用户会话

你可以手动启动和结束用户会话:

// 启动会话
AggregatoriCapaciSdkTracking.startSession();

// 结束会话
AggregatoriCapaciSdkTracking.endSession();

8. 处理应用生命周期事件

你可以在应用的生命周期事件中调用插件的方法,以确保正确的追踪。例如:

class MyApp extends StatefulWidget {
  @override
  _MyAppState createState() => _MyAppState();
}

class _MyAppState extends State<MyApp> with WidgetsBindingObserver {
  @override
  void initState() {
    super.initState();
    WidgetsBinding.instance.addObserver(this);
  }

  @override
  void dispose() {
    WidgetsBinding.instance.removeObserver(this);
    super.dispose();
  }

  @override
  void didChangeAppLifecycleState(AppLifecycleState state) {
    switch (state) {
      case AppLifecycleState.resumed:
        AggregatoriCapaciSdkTracking.startSession();
        break;
      case AppLifecycleState.paused:
        AggregatoriCapaciSdkTracking.endSession();
        break;
      default:
        break;
    }
  }

  @override
  Widget build(BuildContext context) {
    return MaterialApp(
      home: Scaffold(
        appBar: AppBar(
          title: Text('Aggregatori Capaci SDK Tracking Example'),
        ),
        body: Center(
          child: Text('Hello, World!'),
        ),
      ),
    );
  }
}

9. 调试和日志

在开发过程中,你可以启用调试日志以查看插件的内部日志:

AggregatoriCapaciSdkTracking.setDebugMode(enabled: true);

10. 处理权限

确保你的应用已经获取了必要的权限(如网络访问权限),以便插件能够正常工作。

11. 发布应用

在发布应用之前,请确保你已经禁用了调试模式,并进行了充分的测试。

AggregatoriCapaciSdkTracking.setDebugMode(enabled: false);
回到顶部