Flutter用户行为追踪插件trackingio的使用

Flutter用户行为追踪插件trackingio的使用

trackingio flutter

开始使用

此项目是一个用于 Flutter 的插件包起点,专门包含 Android 和/或 iOS 平台特定实现代码。

要开始使用 Flutter,请参阅我们的 在线文档,其中提供了教程、示例、移动开发指南以及完整的 API 参考。


示例代码

以下是使用 trackingio 插件的完整示例代码:

// example/lib/main.dart
import 'package:flutter/material.dart';
import 'dart:async';

import 'package:trackingio/trackingio.dart'; // 导入 trackingio 插件

void main() {
  runApp(MyApp()); // 启动应用
}

class MyApp extends StatefulWidget {
  [@override](/user/override)
  _MyAppState createState() => _MyAppState(); // 创建状态类
}

class _MyAppState extends State<MyApp> {
  [@override](/user/override)
  void initState() {
    super.initState();
    initTrackingIO(); // 初始化 trackingio 插件
  }

  // 异步初始化 trackingio 插件
  Future<void> initTrackingIO() async {
    await Trackingio.setDebuggable(true); // 设置调试模式为 true
    await Trackingio.init("appkey", "app store"); // 初始化插件并传入 appkey 和商店类型
  }

  [@override](/user/override)
  Widget build(BuildContext context) {
    return MaterialApp(
      home: Scaffold(
        appBar: AppBar(
          title: const Text('TrackingIO'), // 设置标题
        ),
        body: Column( // 使用列布局
          children: [
            MaterialButton( // 登录事件按钮
              onPressed: () {
                Trackingio.loginSuccess("1"); // 调用登录成功事件
              },
              child: Text("登录事件"), // 按钮文字
            ),
            MaterialButton( // 注册事件按钮
              onPressed: () {
                Trackingio.register("1"); // 调用注册事件
              },
              child: Text("注册事件"), // 按钮文字
            ),
            MaterialButton( // 自定义事件按钮
              onPressed: () {
                Trackingio.event("hello", {"name": "test", "number": 2.0}); // 调用自定义事件
              },
              child: Text("自定义事件"), // 按钮文字
            ),
            MaterialButton( // 付费事件按钮
              onPressed: () {
                Trackingio.setPayment("123", "alipay", "CNY", 1); // 调用付费事件
              },
              child: Text("付费事件"), // 按钮文字
            )
          ],
        ),
      ),
    );
  }
}

更多关于Flutter用户行为追踪插件trackingio的使用的实战教程也可以访问 https://www.itying.com/category-92-b0.html

1 回复

更多关于Flutter用户行为追踪插件trackingio的使用的实战系列教程也可以访问 https://www.itying.com/category-92-b0.html


trackingio 是一个用于 Flutter 应用的用户行为追踪插件,通常用于收集用户行为数据并发送到指定的分析平台。以下是如何在 Flutter 项目中使用 trackingio 插件的基本步骤:

1. 添加依赖

首先,在 pubspec.yaml 文件中添加 trackingio 插件的依赖:

dependencies:
  flutter:
    sdk: flutter
  trackingio: ^1.0.0  # 请使用最新版本

然后运行 flutter pub get 来安装依赖。

2. 初始化插件

main.dart 文件中初始化 trackingio 插件。通常,你需要在应用启动时进行初始化。

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

void main() async {
  WidgetsFlutterBinding.ensureInitialized();
  
  // 初始化 trackingio
  await Trackingio.init(
    appKey: 'YOUR_APP_KEY',  // 替换为你的应用密钥
    channel: 'default',      // 渠道标识
    debug: true,             // 是否开启调试模式
  );

  runApp(MyApp());
}

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

3. 追踪用户行为

你可以在应用的不同位置使用 Trackingio 来追踪用户行为。例如,追踪页面访问、按钮点击等事件。

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

class MyHomePage extends StatelessWidget {
  @override
  Widget build(BuildContext context) {
    return Scaffold(
      appBar: AppBar(
        title: Text('Flutter Demo Home Page'),
      ),
      body: Center(
        child: Column(
          mainAxisAlignment: MainAxisAlignment.center,
          children: <Widget>[
            ElevatedButton(
              onPressed: () {
                // 追踪按钮点击事件
                Trackingio.trackEvent('button_click', {'button_name': 'demo_button'});
              },
              child: Text('Click Me'),
            ),
          ],
        ),
      ),
    );
  }
}

4. 追踪页面访问

你可以在页面生命周期中追踪页面的访问事件。例如,在 StatefulWidgetinitStatedispose 方法中追踪页面的进入和退出。

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

class MyPage extends StatefulWidget {
  @override
  _MyPageState createState() => _MyPageState();
}

class _MyPageState extends State<MyPage> {
  @override
  void initState() {
    super.initState();
    // 追踪页面进入事件
    Trackingio.trackPageView('MyPage');
  }

  @override
  void dispose() {
    // 追踪页面退出事件
    Trackingio.trackPageEnd('MyPage');
    super.dispose();
  }

  @override
  Widget build(BuildContext context) {
    return Scaffold(
      appBar: AppBar(
        title: Text('My Page'),
      ),
      body: Center(
        child: Text('This is My Page'),
      ),
    );
  }
}

5. 其他功能

trackingio 还提供了其他功能,例如设置用户属性、追踪自定义事件等。你可以根据需求使用这些功能。

// 设置用户属性
Trackingio.setUserProfile({
  'user_id': '12345',
  'name': 'John Doe',
  'email': 'john.doe@example.com',
});

// 追踪自定义事件
Trackingio.trackEvent('purchase', {
  'product_id': '123',
  'price': 99.99,
});

6. 调试与日志

在开发阶段,你可以开启调试模式来查看 trackingio 的日志输出,确保数据正确发送。

await Trackingio.init(
  appKey: 'YOUR_APP_KEY',
  channel: 'default',
  debug: true,  // 开启调试模式
);

7. 发布应用

在发布应用时,确保关闭调试模式,以避免在生产环境中输出不必要的日志。

await Trackingio.init(
  appKey: 'YOUR_APP_KEY',
  channel: 'default',
  debug: false,  // 关闭调试模式
);
回到顶部