Skip to content
This repository was archived by the owner on Apr 8, 2023. It is now read-only.

Commit f55d30e

Browse files
committed
改善版本检查
1 parent b2518fb commit f55d30e

File tree

4 files changed

+42
-21
lines changed

4 files changed

+42
-21
lines changed

ClickShow/Properties/AssemblyInfo.cs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -51,5 +51,5 @@
5151
// You can specify all the values or you can default the Build and Revision Numbers
5252
// by using the '*' as shown below:
5353
// [assembly: AssemblyVersion("1.0.*")]
54-
[assembly: AssemblyVersion("1.4.0.0")]
55-
[assembly: AssemblyFileVersion("1.4.0.0")]
54+
[assembly: AssemblyVersion("1.4.1.0")]
55+
[assembly: AssemblyFileVersion("1.4.1.0")]

ClickShow/Settings/AppSetting.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -116,7 +116,7 @@ protected virtual void OnPropertyChanged([CallerMemberName] string propertyName
116116
}
117117

118118
/// <summary>
119-
/// 上次提醒的版本
119+
/// 上次提醒的最新版本,避免重复提醒。
120120
/// </summary>
121121
public string LastNotifiedVersion { get; set; }
122122
}

ClickShow/UI/MainWindow.xaml

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -60,8 +60,11 @@
6060
</StackPanel>
6161
<StackPanel Grid.Column="1" VerticalAlignment="Center">
6262
<TextBlock Margin="10" HorizontalAlignment="Center">
63-
<Hyperlink NavigateUri="https://github.com/cuiliang/clickshow" RequestNavigate="HyperlinkOpenHomepage_OnRequestNavigate">反馈与更新 / Homepage</Hyperlink>
63+
<Hyperlink NavigateUri="https://github.com/cuiliang/clickshow" RequestNavigate="HyperlinkOpenHomepage_OnRequestNavigate">反馈与更新 / Homepage</Hyperlink>
64+
<LineBreak></LineBreak>
65+
<TextBlock Name="LblNewVersion" Foreground="OrangeRed" FontWeight="Bold" Visibility="Collapsed" Text="已有新版本!"/>
6466
</TextBlock>
67+
6568

6669
<Grid>
6770
<Grid.ColumnDefinitions>

ClickShow/UI/MainWindow.xaml.cs

Lines changed: 35 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -102,54 +102,72 @@ private void OnLoaded(object sender, RoutedEventArgs e)
102102
// 检查版本更新
103103
Task.Run(async () =>
104104
{
105-
await Task.Delay(1000 * 60 * 1);
105+
await Task.Delay(1000 * 10 );
106106
CheckUpdate();
107107
});
108108

109109
}
110110

111-
/// <summary>
112-
/// 在主窗口上提示有新版本
113-
/// </summary>
114-
public bool ShowNewVersionTip { get; set; }
115111
public Version NewVersion { get; set; }
116112

117113
/// <summary>
118114
/// 检查版本更新
119115
/// </summary>
120116
private void CheckUpdate()
121117
{
122-
string url = "https://raw.githubusercontent.com/cuiliang/ClickShow/main/version.txt";
118+
// 版本号检查网址
119+
string url = "https://helperservice.getquicker.cn/clickshow/version";
120+
string updateUrl = "https://github.com/cuiliang/ClickShow/releases";
123121

124122
try
125123
{
126124
var client = new WebClient();
125+
126+
// 下载版本信息字符串。可能格式:(1)只有版本号。 (2)版本号|网址
127127
var versionStr = client.DownloadString(url);
128-
NewVersion = new Version(versionStr);
128+
129+
if (versionStr.Contains("|"))
130+
{
131+
string[] parts = versionStr.Split('|');
132+
NewVersion = new Version(parts[0]);
133+
updateUrl = String.IsNullOrEmpty(parts[1]) ? updateUrl : parts[1];
134+
}
135+
else
136+
{
137+
NewVersion = new Version(versionStr);
138+
}
139+
140+
141+
129142

130143
// 版本落后了
131144
if (NewVersion > Assembly.GetExecutingAssembly().GetName().Version)
132145
{
133146
// 如果之前已经提示了此版本,则不再提示,不然每次开机都会有一个提示了。
134147
if (String.Equals(AppSetting.LastNotifiedVersion, versionStr))
135148
{
136-
ShowNewVersionTip = true;
149+
Dispatcher.InvokeAsync(() =>
150+
{
151+
LblNewVersion.Visibility = Visibility.Visible;
152+
153+
});
137154
}
138155
else
139156
{
140157
AppSetting.LastNotifiedVersion = versionStr;
141158
SaveSettings();
142159

143-
if (MessageBox.Show($"ClickShow有新版本({versionStr}),是否立即打开网页?", "ClickShow", MessageBoxButton.YesNo, MessageBoxImage.Information) == MessageBoxResult.Yes)
160+
if (MessageBox.Show($"ClickShow有新版本({versionStr}),是否立即打开网页?", "ClickShow", MessageBoxButton.YesNo, MessageBoxImage.Information) != MessageBoxResult.Yes)
161+
{
162+
return;
163+
}
164+
try
165+
{
166+
Process.Start(updateUrl);
167+
}
168+
catch
144169
{
145-
try
146-
{
147-
Process.Start("https://github.com/cuiliang/ClickShow/releases");
148-
}
149-
catch
150-
{
151-
MessageBox.Show("无法打开网址:https://github.com/cuiliang/ClickShow/releases");
152-
}
170+
MessageBox.Show($"无法打开网址:{updateUrl}");
153171
}
154172
}
155173
}

0 commit comments

Comments
 (0)