こんにちは。
株式会社エス・スリーのスタッフです。
FlutterでFirebase Analyticsを有効にして、アプリ内でのイベントを取得してみた記事になります。
公式のスタートガイドはこちら
今回は、Drawerのメニューをタップしたときのイベントを取得してみます。
Analyticsでは推奨イベントという定義があり、簡単に使うことができるようです。
今回の「メニューをタップ」するという行動の場合はselect contentが当てはまるのかと思います。
以下はDrawerを切り出した場合のサンプルコードとなります。
import 'package:flutter/material.dart';
import 'package:go_router/go_router.dart';
import 'package:firebase_analytics/firebase_analytics.dart';
class DrawerContent extends StatelessWidget {
const DrawerContent({super.key});
Future logging(menu) async {
await FirebaseAnalytics.instance
.logSelectContent(
contentType: menu,
itemId: menu,
);
}
@override
Widget build(BuildContext context) {
FirebaseAnalytics analytics = FirebaseAnalytics.instance;
return Drawer(
child: ListView(
children: [
const DrawerHeader(
decoration: BoxDecoration(
color: Colors.blue,
),
child: Text(
'Sanple App',
style: TextStyle(
fontSize: 24,
color: Colors.white,
),
),
),
ListTile(
title: const Text('HOME'),
onTap: () {
logging('HOME');
context.go('/');
Navigator.pop(context);
},
),
ListTile(
title: const Text('ユーザー一覧'),
onTap: () {
logging('userlist');
context.go('/userlist');
},
),
],
),
);
}
}
