getStoredSnowplowUserId method

Future<String?> getStoredSnowplowUserId()

Implementation

Future<String?> getStoredSnowplowUserId() async {
  try {
    final userId = await SecureStorage.getSecureData(_userIdKey);
    final timestamp = await SecureStorage.getSecureData(_timestampKey);

    if (userId == null || timestamp == null) return null;

    final storedTime = DateTime.tryParse(timestamp);
    if (storedTime == null) return null;

    if (DateTime.now().difference(storedTime).inHours > 24) {
      return null;
    }

    return userId;
  } catch (e) {
    return null;
  }
}