private async Task CheckForUpdatesAsync() { _updateTimer.Change(Timeout.Infinite, Timeout.Infinite); var request = new UpdateRequest() .WithNameAndVersionFromEntryAssembly() .AsAnonymousClient() .OnChannel("stable") .OnPlatform(new OperatingSystemIdentifier()); var client = new WebSoupClient(); var updates = await client.CheckForUpdatesAsync(request); var availableUpdate = updates.FirstOrDefault(); if (availableUpdate != null) { this.Invoke((Action)(() => { biUpdate.Visibility = BarItemVisibility.Always; biUpdate.Hint = $"Version {availableUpdate.ShortestVersionString} is available."; biUpdate.Tag = availableUpdate.Url; })); } }
private async Task CheckForUpdatesAsync() { var request = new UpdateRequest() .WithNameAndVersionFromEntryAssembly() .AsAnonymousClient() .OnChannel("stable") .OnPlatform(new OperatingSystemIdentifier().WithSuffix("(WPF)")); var client = new WebSoupClient(); var updates = await client.CheckForUpdatesAsync(request); AvailableUpdate = updates.FirstOrDefault(); _updateTimer.Change((int)TimeSpan.FromHours(2).TotalMilliseconds, Timeout.Infinite); }
private async void CheckForUpdatesAsync(object state) { var bundleVersion = NSBundle.MainBundle.ObjectForInfoDictionary("CFBundleShortVersionString").ToString(); var request = new UpdateRequest() .WithNameAndVersionFromEntryAssembly() .WithVersion(bundleVersion) .AsAnonymousClient() .OnChannel("stable") .OnPlatform(new OperatingSystemIdentifier().WithSuffix("(Mac)")); var client = new WebSoupClient(); var updates = await client.CheckForUpdatesAsync(request); AvailableUpdate = updates.FirstOrDefault(); _updateTimer.Change((int)TimeSpan.FromHours(2).TotalMilliseconds, Timeout.Infinite); }