improve user experience

This commit is contained in:
HolographicHat
2022-11-01 11:11:11 +08:00
parent afee99fd3f
commit 9e0d18910b
4 changed files with 16 additions and 20 deletions

11
res/App.Designer.cs generated
View File

@@ -255,15 +255,6 @@ namespace YaeAchievement.res {
} }
} }
/// <summary>
/// Looks up a localized string similar to To fetch new data, Restart the application after delete cache\d1a8ef40a67a5929.miko..
/// </summary>
internal static string RefreshData {
get {
return ResourceManager.GetString("RefreshData", resourceCulture);
}
}
/// <summary> /// <summary>
/// Looks up a localized string similar to Reward not taken. /// Looks up a localized string similar to Reward not taken.
/// </summary> /// </summary>
@@ -348,7 +339,7 @@ namespace YaeAchievement.res {
} }
/// <summary> /// <summary>
/// Looks up a localized string similar to Use previous fetched data.. /// Looks up a localized string similar to Use previous fetched data? (yes|no).
/// </summary> /// </summary>
internal static string UsePreviousData { internal static string UsePreviousData {
get { get {

View File

@@ -105,10 +105,7 @@ Input a number (0-5): </value>
<value>YaeAchievement ({0})</value> <value>YaeAchievement ({0})</value>
</data> </data>
<data name="UsePreviousData" xml:space="preserve"> <data name="UsePreviousData" xml:space="preserve">
<value>Use previous fetched data.</value> <value>Use previous fetched data? (yes|no)</value>
</data>
<data name="RefreshData" xml:space="preserve">
<value>To fetch new data, Restart the application after delete cache\d1a8ef40a67a5929.miko.</value>
</data> </data>
<data name="NetworkError" xml:space="preserve"> <data name="NetworkError" xml:space="preserve">
<value>Network error:</value> <value>Network error:</value>

View File

@@ -99,10 +99,7 @@
<value>YaeAchievement - 原神成就导出工具 ({0})</value> <value>YaeAchievement - 原神成就导出工具 ({0})</value>
</data> </data>
<data name="UsePreviousData" xml:space="preserve"> <data name="UsePreviousData" xml:space="preserve">
<value>使用上一次获取到的成就数据</value> <value>使用上一次获取到的成就数据吗? (yes|no)</value>
</data>
<data name="RefreshData" xml:space="preserve">
<value>要重新获取数据,手动删除 cache\d1a8ef40a67a5929.miko 后重新启动 YaeAchievement</value>
</data> </data>
<data name="NetworkError" xml:space="preserve"> <data name="NetworkError" xml:space="preserve">
<value>网络错误: {0}</value> <value>网络错误: {0}</value>

View File

@@ -28,11 +28,22 @@ new EventLog("AppInit") {
{ "SystemVersion", DeviceHelper.GetSystemVersion() } { "SystemVersion", DeviceHelper.GetSystemVersion() }
} }
}.Enqueue(); }.Enqueue();
var usePreviousData = false;
var historyCache = new CacheFile("ExportData"); var historyCache = new CacheFile("ExportData");
if (historyCache.LastWriteTime.AddMinutes(10) > DateTime.UtcNow) { if (historyCache.LastWriteTime.AddMinutes(10) > DateTime.UtcNow) {
Console.WriteLine(App.UsePreviousData); Console.WriteLine(App.UsePreviousData);
Console.WriteLine(App.RefreshData); usePreviousData = Console.ReadLine() == "yes";
Export.Choose(AchievementAllDataNotify.Parser.ParseFrom(historyCache.Read().Content)); }
Export:
if(usePreviousData) {
AchievementAllDataNotify data;
try {
data = AchievementAllDataNotify.Parser.ParseFrom(historyCache.Read().Content);
} catch (Exception) {
usePreviousData = false;
goto Export;
}
Export.Choose(data);
} else { } else {
StartAndWaitResult(AppConfig.GamePath, str => { StartAndWaitResult(AppConfig.GamePath, str => {
GlobalVars.UnexpectedExit = false; GlobalVars.UnexpectedExit = false;