fetchInstallDay static method
Returns install day in UTC milliseconds since epoch, or -1 if error.
Implementation
static Future<void> fetchInstallDay() async {
try {
final int installDayMillis =
await _channel
.invokeMethod<int>('getInstallDay')
.timeout(_platformCallTimeout, onTimeout: () => -1) ??
-1;
if (_isValidTimestamp(installDayMillis)) {
await Event.setInstallDay(installDayMillis);
// Persist exact install_time_millis for retention calculation
if (Prefs.getInt(_keyInstallTimeMillis) == null) {
await Prefs.setInt(_keyInstallTimeMillis, installDayMillis);
}
} else {
await _applyCachedInstallDayIfAvailable();
}
} catch (e) {
dbLogger.warning("Failed to get App Install Day: $e");
await _applyCachedInstallDayIfAvailable();
}
}