logEvent method
Future<void>
logEvent(
{ - required AnalyticsEvent e,
})
override
Implementation
@override
Future<void> logEvent({required AnalyticsEvent e}) async {
if (!isReady) {
throw Exception('$providerName: Firebase Analytics is not ready');
}
if (!isAnalyticsEnabled) {
logger.debug(
this,
'$providerName: Analytics is disabled, event will not be logged',
);
return;
}
logger.debug(
this,
'$providerName: Logging event: ${e.name} and parameters: ${e.parameters}',
);
await instance
?.logEvent(
name: e.name,
parameters: e.parameters,
)
.onError((error, stackTrace) {
logger.error(
this,
'$providerName: $error',
error: error,
stackTrace: stackTrace,
);
}).then((value) {
logger.debug(
this,
'$providerName: Event logged successfully',
);
});
}