Merge branch 'main' into release

This commit is contained in:
Van Leemput Dayron
2026-01-02 17:26:26 +01:00
6 changed files with 277 additions and 8 deletions

View File

@@ -0,0 +1,54 @@
import 'package:firebase_analytics/firebase_analytics.dart';
import 'package:flutter/foundation.dart';
/// Service wrapper for Google Analytics
class AnalyticsService {
final FirebaseAnalytics _analytics = FirebaseAnalytics.instance;
FirebaseAnalyticsObserver getAnalyticsObserver() =>
FirebaseAnalyticsObserver(analytics: _analytics);
Future<void> logEvent({
required String name,
Map<String, Object>? parameters,
}) async {
try {
await _analytics.logEvent(name: name, parameters: parameters);
} catch (e) {
debugPrint('Error logging analytics event: $e');
}
}
Future<void> setUserProperty({
required String name,
required String? value,
}) async {
try {
await _analytics.setUserProperty(name: name, value: value);
} catch (e) {
debugPrint('Error setting user property: $e');
}
}
Future<void> setUserId(String? id) async {
try {
await _analytics.setUserId(id: id);
} catch (e) {
debugPrint('Error setting user ID: $e');
}
}
Future<void> logScreenView({
required String screenName,
String? screenClass,
}) async {
try {
await _analytics.logScreenView(
screenName: screenName,
screenClass: screenClass,
);
} catch (e) {
debugPrint('Error logging screen view: $e');
}
}
}