Flutter数据分析插件heyinsight_package的使用

Flutter数据分析插件heyinsight_package的使用

本仓库是一个迷你教程,旨在帮助你创建用于abc.com教程的示例应用。仓库中包含了你需要的资源,以便在读者构建应用时保持良好的外观。

应用名称

与其让启动图标使用项目名称(比如appname),你应该更新每个平台上的显示名称,以使应用看起来更美观。

测试

在Android和iOS设备或模拟器上运行应用,确保启动屏幕、启动图标和应用名称正确显示。如果没有Mac,则在Trello卡片中提及这一点,以便TE或FPE可以检查iOS版本。

在浏览器中运行Flutter Web应用,确保书签图标和应用名称在浏览器标签页中正确显示。

未来更新

本指南适用于Flutter 2.0。当桌面版本进入稳定通道且无需任何特殊标志时,应为它们添加所需资源。

是否有新的Flutter更新破坏了本指南?请在GitHub上提交一个issue或pull request。


示例代码

import 'package:example/screens/detail.dart';
import 'package:example/screens/home.dart';
import 'package:flutter/material.dart';
import 'package:go_router/go_router.dart';
import 'package:heyinsight_package/heyinsight_package.dart';

void main() async {
  WidgetsFlutterBinding.ensureInitialized();

  // 初始化HeyInsight包,设置Android和iOS的应用密钥和应用ID
  await HeyInsight.initApp(
    android: HsAppOptions(
      apiKey: '', // 请替换为你的Android API Key
      appId: '', // 请替换为你的Android App ID
    ),
    ios: HsAppOptions(
      apiKey: '', // 请替换为你的iOS API Key
      appId: '', // 请替换为你的iOS App ID
    ),
  );

  // 初始化通知系统
  await HSNotification.initNotification();

  runApp(MyApp());
}

// 创建一个JourneyTrackerObserver实例来追踪用户旅程
final journeyTrackerObserver = JourneyTrackerObserver();

// 定义路由配置
final GoRouter _router = GoRouter(
  observers: [journeyTrackerObserver], // 添加观察者
  routes: [
    GoRoute(
      path: '/',
      builder: (BuildContext context, GoRouterState state) {
        return const HomeScreen(); // 主屏幕
      },
      routes: [
        GoRoute(
          path: 'details', // 详情路径
          builder: (BuildContext context, GoRouterState state) {
            return const DetailsScreen(); // 详情屏幕
          },
        ),
      ],
    ),
  ],
);

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

  [@override](/user/override)
  State<MyApp> createState() => _AppState();
}

class _AppState extends State<MyApp> {
  [@override](/user/override)
  void initState() {
    super.initState();
  }

  // 构建应用的根组件
  [@override](/user/override)
  Widget build(BuildContext context) {
    return HsAnalyticsProvider(
      journeyTrackerObserver: journeyTrackerObserver, // 提供观察者
      builder: (context) {
        return MaterialApp.router( // 使用路由管理器
          routerConfig: _router,
        );
      },
    );
  }
}

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

1 回复

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


heyinsight_package 是一个用于 Flutter 应用的数据分析插件。它可以帮助开发者轻松地集成数据分析功能,跟踪用户行为、事件等,从而更好地了解应用的使用情况。以下是如何使用 heyinsight_package 的基本步骤:

1. 添加依赖

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

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

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

2. 初始化插件

在你的 Flutter 应用中初始化 heyinsight_package。通常,你可以在 main.dart 文件中的 main 函数中进行初始化。

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

void main() async {
  WidgetsFlutterBinding.ensureInitialized();

  // 初始化 HeyInsight
  await HeyInsight.init(
    appId: 'YOUR_APP_ID',  // 替换为你的应用ID
    channel: 'default',    // 渠道,默认为 'default'
  );

  runApp(MyApp());
}

3. 跟踪事件

你可以在应用的任何地方使用 HeyInsight.trackEvent 方法来跟踪用户事件。

HeyInsight.trackEvent(
  eventName: 'button_click',  // 事件名称
  properties: {'button_id': 'login_button'},  // 事件属性
);

4. 设置用户属性

你还可以设置用户属性,以便更好地分析用户行为。

HeyInsight.setUserProperties(
  properties: {
    'user_id': '12345',
    'user_name': 'John Doe',
  },
);

5. 用户登录/登出

如果应用有用户登录功能,你可以在用户登录或登出时调用相应的方法。

// 用户登录
HeyInsight.login('user_id_12345');

// 用户登出
HeyInsight.logout();

6. 其他功能

heyinsight_package 可能还提供其他功能,如页面跟踪、错误跟踪等。你可以根据插件的文档来使用这些功能。

7. 调试

在开发过程中,你可以启用调试模式来查看日志输出。

HeyInsight.setDebugEnabled(true);

8. 发布应用

在发布应用时,确保关闭调试模式。

HeyInsight.setDebugEnabled(false);
回到顶部