logScreenView method

Future<void> logScreenView({
  1. required String screenName,
  2. String? screenClass,
})

Log a button press using a common Scree View.

Implementation

Future<void> logScreenView({
  required String screenName,
  String? screenClass,
}) {
  final scope =
      getElementForInheritedWidgetOfExactType<UncontrolledProviderScope>()
          ?.widget as UncontrolledProviderScope?;

  if (scope == null) {
    if (kDebugMode) {
      print('No provider scope found. "$screenName" event was not logged.');
    }

    return Future.value();
  }

  final container = scope.container;
  final analytics = container.read(analyticsProvider);

  return analytics.logScreenView(
    screenName: screenName,
    screenClass: screenClass,
  );
}