-
Notifications
You must be signed in to change notification settings - Fork 5
/
MainPage.xaml.cs
66 lines (57 loc) · 2.11 KB
/
MainPage.xaml.cs
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
using System;
using System.Collections.Generic;
using System.IO;
using System.Linq;
using System.Runtime.InteropServices.WindowsRuntime;
using Dwrandaz.AutoUpdateComponent;
using Windows.ApplicationModel;
using Windows.Foundation;
using Windows.Foundation.Collections;
using Windows.UI.Xaml;
using Windows.UI.Xaml.Controls;
using Windows.UI.Xaml.Controls.Primitives;
using Windows.UI.Xaml.Data;
using Windows.UI.Xaml.Input;
using Windows.UI.Xaml.Media;
using Windows.UI.Xaml.Navigation;
// The Blank Page item template is documented at https://go.microsoft.com/fwlink/?LinkId=402352&clcid=0x409
namespace SampleApp
{
/// <summary>
/// An empty page that can be used on its own or navigated to within a Frame.
/// </summary>
public sealed partial class MainPage : Page
{
public MainPage()
{
this.InitializeComponent();
var version = Package.Current.Id.Version;
versionTextBlock.Text = $"{version.Major}.{version.Minor}.{version.Build}.{version.Revision}";
}
private async void UpdateButton_Click(object sender, RoutedEventArgs e)
{
statusTextBlock.Text = "Getting the latest update information...";
var path = "http://localhost:5000/install/SampleApp.appinstaller";
var info = await AutoUpdateManager.CheckForUpdatesAsync(path);
if (!info.Succeeded)
{
statusTextBlock.Text = info.ErrorMessage;
return;
}
if (!info.ShouldUpdate)
{
statusTextBlock.Text = "This app is already up-to-date :)";
return;
}
// You can use info.MainBundleVersion to get the update version
statusTextBlock.Text = $"New version: {info.MainBundleVersion}";
var result = await AutoUpdateManager.TryToUpdateAsync(info);
if (!result.Succeeded)
{
statusTextBlock.Text = result.ErrorMessage;
return;
}
statusTextBlock.Text = $"Success! The app will be restarted soon, see you later!";
}
}
}