diff --git a/src/MaaWpfGui/Main/VersionUpdateViewModel.cs b/src/MaaWpfGui/Main/VersionUpdateViewModel.cs
index 344a11850c..ea581cb400 100644
--- a/src/MaaWpfGui/Main/VersionUpdateViewModel.cs
+++ b/src/MaaWpfGui/Main/VersionUpdateViewModel.cs
@@ -155,6 +155,16 @@ namespace MaaWpfGui
}
}
+ ///
+ /// Gets the OS architecture.
+ ///
+ public static string OSArchitecture => RuntimeInformation.OSArchitecture.ToString().ToLower();
+
+ ///
+ /// Gets a value indicating whether the OS is arm.
+ ///
+ public static bool IsArm => OSArchitecture.StartsWith("arm");
+
private const string RequestUrl = "repos/MaaAssistantArknights/MaaRelease/releases";
private const string StableRequestUrl = "repos/MaaAssistantArknights/MaaAssistantArknights/releases/latest";
private const string MaaReleaseRequestUrlByTag = "repos/MaaAssistantArknights/MaaRelease/releases/tags/";
@@ -641,7 +651,14 @@ namespace MaaWpfGui
if (name.Contains("ota") && name.Contains("win") && name.Contains($"{_curVersion}_{_latestVersion}"))
{
_assetsObject = curAssets as JObject;
- break;
+ if (IsArm ^ name.Contains("arm"))
+ {
+ continue; // 兼容旧版本,以前 ota 不区分指令集架构
+ }
+ else
+ {
+ break;
+ }
}
}