private async Task KeepUpdated() { try { var currentVersion = await _storageService.GetCurrentVersion(); var latestVersion = await _packageManager.Scan(currentVersion); if (latestVersion.HasNewerVersion) { await _packageManager.DownloadVersion(latestVersion.LatestVersion); } } catch (Exception e) { _logger.Error(e, "Failed to keep application automatically updated"); } }
private async Task <(bool IsFirstLaunch, string CurrentVersion, string AppRootFolder, string AppVersionFolder)> Initialize() { _logger.Info("Initializing launcher"); var appRootFolder = _storageService.GetApplicationRootFolderPath(); _logger.Info("Application root folder: {AppRootFolder}", appRootFolder); var appVersionsFolder = _storageService.GetApplicationVersionsFolder(); _logger.Info("Application versions folder: {AppVersionsFolder}", appVersionsFolder); var isFirstLaunch = !Directory.Exists(appVersionsFolder); Directory.CreateDirectory(appVersionsFolder); _logger.Info("Is first launch: {IsFirstLaunch}", isFirstLaunch); var currentVersion = await _storageService.GetCurrentVersion(); return(isFirstLaunch, currentVersion, appRootFolder, appVersionsFolder); }