Flutter谷歌分析集成插件eggnstone_google_analytics的使用

发布于 1周前 作者 wuwangju 来自 Flutter

Flutter谷歌分析集成插件eggnstone_google_analytics的使用

插件介绍

eggnstone_google_analytics 是一个包装器,用于通过 Firebase 报告 Google Analytics 数据。它允许您在Flutter应用中轻松地进行数据分析。

安装和配置

  1. 从Firebase下载 google-services.jsonandroid/app 目录。
  2. 从Firebase下载 GoogleService-Info.plistios/Runner 目录。

示例代码

以下是使用 eggnstone_google_analytics 的完整示例代码:

import 'package:eggnstone_dart/eggnstone_dart.dart';
import 'package:eggnstone_flutter/eggnstone_flutter.dart';
import 'package:eggnstone_google_analytics/eggnstone_google_analytics.dart';
import 'package:firebase_core/firebase_core.dart';
import 'package:flutter/material.dart';

Future<void> main() async {
    // 设置日志开关
    final bool useLogger = true;
    // 使用以下代码仅在调试构建中启用日志:
    //final bool useLogger = DartTools.isDebugBuild();

    // 设置是否启用Analytics
    final bool useAnalytics = true;
    // 使用以下代码仅在发布构建中启用Analytics:
    //final bool useAnalytics = DartTools.isReleaseBuild();

    // 设置是否启用调试Analytics
    final bool debugAnalytics = true;

    WidgetsFlutterBinding.ensureInitialized();

    try {
        await Firebase.initializeApp();
    } on Exception catch (e) {
        // 打印错误信息
        print(e);
        // 提示用户下载 google-services.json 和 GoogleService-Info.plist 文件
        print('Download google-services.json from Firebase to android/app!');
        print('Download GoogleService-Info.plist from Firebase to ios/Runner!');
        return;
    }

    isLoggerEnabled = useLogger;

    final IGoogleAnalyticsService analytics = await GoogleAnalyticsService.create(useAnalytics, debugAnalytics);
    analytics.track('AppStart', {'Version': '0.0.1'});

    runApp(const App());
}

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

    @override
    Widget build(BuildContext context) {
        return const MaterialApp(
            title: 'eggnstone_google_analytics Demo',
            home: HomePage()
        );
    }
}

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

    @override
    _HomePageState createState() => _HomePageState();
}

class _HomePageState extends State<HomePage> with AnalyticsMixin {
    int _counter = 0;

    void _incrementCounter() {
        setState(() {
            _counter++;
        });

        analytics.track('ButtonPush', {'Counter': _counter});
    }

    @override
    Widget build(BuildContext context) {
        return Scaffold(
            appBar: AppBar(title: const Text('eggnstone_google_analytics Demo')),
            body: Center(
                child: Column(
                    mainAxisAlignment: MainAxisAlignment.center,
                    children: [
                        const Text('You have pushed the button this many times:'),
                        Text('${_counter}')
                    ]
                )
            ),
            floatingActionButton: FloatingActionButton(
                onPressed: _incrementCounter,
                tooltip: 'Increment',
                child: const Icon(Icons.add)
            )
        );
    }
}

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

1 回复

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


当然,以下是如何在Flutter项目中集成并使用eggnstone_google_analytics插件来进行谷歌分析的代码案例。

1. 添加依赖

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

dependencies:
  flutter:
    sdk: flutter
  eggnstone_google_analytics: ^x.y.z  # 请使用最新版本号

替换x.y.z为当前最新版本号,可以在pub.dev上查找。

2. 安装依赖

在终端中运行以下命令来安装依赖:

flutter pub get

3. 初始化插件

在你的Flutter项目的入口文件(通常是main.dart)中,初始化eggnstone_google_analytics插件。你需要提供你的Google Analytics的Tracking ID。

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

void main() {
  // 初始化 Google Analytics
  Analytics.initialize('你的GA_TRACKING_ID');

  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 StatelessWidget {
  @override
  Widget build(BuildContext context) {
    return Scaffold(
      appBar: AppBar(
        title: Text('Flutter Google Analytics Demo'),
      ),
      body: Center(
        child: ElevatedButton(
          onPressed: () {
            // 发送一个页面视图事件
            Analytics.sendScreenView('Home Page');

            // 发送一个自定义事件
            Analytics.sendEvent(
              category: 'ui_action',
              action: 'button_press',
              label: 'home_page_button',
              value: 1,  // 可选,事件的值
            );
          },
          child: Text('Send Analytics'),
        ),
      ),
    );
  }
}

4. 处理敏感数据

注意,不要将你的Google Analytics Tracking ID硬编码到你的源代码中。你可以考虑使用环境变量或配置文件来管理这些敏感信息。

5. 运行应用

现在,你可以运行你的Flutter应用,并通过点击按钮来发送页面视图和自定义事件到Google Analytics。

flutter run

6. 验证数据

登录到你的Google Analytics账户,检查实时报告,看看是否收到了来自你的Flutter应用的数据。

这个代码案例展示了如何集成eggnstone_google_analytics插件并发送基本的页面视图和自定义事件。你可以根据需要扩展这些功能,例如发送更多类型的事件或添加更多的用户数据。

回到顶部