analyticsTrackInstalls method

  1. @override
Future<Either<Failure, Success>> analyticsTrackInstalls()
override

Implementation

@override
Future<Either<Failure, Success>> analyticsTrackInstalls() async {
  try {
    var result = _sharedPref.getBool(localKeyInstallation) ?? false;
    if (result == false) {
      if (googleAnalyticsRemoteDS != null) {
        await googleAnalyticsRemoteDS
            ?.sendAnalytics(analytics_installKey, {});
      }
      if (rudderStackRemoteDS != null) {
        await rudderStackRemoteDS?.trackEvent(analytics_installKey,
            RudderProperty().putValue(key: analytics_installKey, value: {}));
      }
      return Right(AnalyticsLogsSuccess());
    } else {
      _sharedPref.setBool(localKeyInstallation, true);
      return Right(AnalyticsLogsSuccess());
    }
  } catch (e) {
    return Left(RepositoryFailure());
  }
}