analytics_hub_firebase 0.1.0
analytics_hub_firebase: ^0.1.0 copied to clipboard
Firebase Analytics provider for analytics_hub. Sends LogEvent and all GA4 e-commerce events (add_to_cart, purchase, view_item, etc.) to Firebase via the official SDK.
example/main.dart
import 'package:analytics_hub/analytics_hub.dart';
import 'package:analytics_hub_firebase/analytics_hub_firebase.dart';
class EmptySessionDelegate implements HubSessionDelegate {
@override
Stream<Session?> get sessionStream => Stream.value(null);
@override
Future<Session?> getSession() async => null;
}
class ExampleSelectPromotionECommerceEvent
extends SelectPromotionECommerceEvent {
const ExampleSelectPromotionECommerceEvent({required this.creativeName});
final String creativeName;
@override
SelectPromotionECommerceEventData get data =>
SelectPromotionECommerceEventData(
creativeName: creativeName,
);
@override
Set<ProviderKey<ECommerceEventResolver>> get providerKeys => {
const FirebaseAnalyticsHubProviderKey(),
};
}
Future<void> main() async {
final hub = AnalyticsHub(
sessionDelegate: EmptySessionDelegate(),
providers: [
FirebaseAnalyticsHubProvider.fromInstance(),
],
);
await hub.initialize();
await hub.sendEvent(
const ExampleSelectPromotionECommerceEvent(creativeName: 'creative_name'),
);
await hub.dispose();
}