initialize method

  1. @override
Future<void> initialize({
  1. required AnalyticsSettings settings,
})
override

Implementation

@override
Future<void> initialize({required AnalyticsSettings settings}) async {
  super.initialize(settings: settings);

  providerName = "firebase_analytics";

  if (Firebase.apps.isEmpty) {
    super.setIsReady(isReady: false);
    throw Exception('$providerName: Firebase is not initialized');
  } else {
    instance = FirebaseAnalytics.instance;
    instanceId = await instance?.appInstanceId;
    appId = instance?.app.name;

    logger.info(
      this,
      "$providerName: Initialized successfully, app:$appId:$instanceId:$instance",
    );

    observer ??= FirebaseAnalyticsObserver(analytics: instance!);

    logger.info(
      this,
      "$providerName: Service registered successfully with littlefish_core",
    );

    super.setIsReady(isReady: true);
  }
}