v0.13.4
稳定版 x64 · SetupAetherGate v0.13.4 更新日志

本次更新聚焦 USM 密钥配置的底层重构与稳定性提升,建议所有使用 USM 转换功能的用户更新。
过场动画(USM)的密钥库从随包静态文件升级为在线自动更新机制,支持缓存目录优先、安装目录兜底、网络缺失时自动下载的三级缓存策略;默认安装路径(Program Files)下也能正常接收密钥更新;密钥文件损坏或缺失时会自动修复。同时修复了星铁 USM 转换的文件名拼写错误。
✨ 新功能
🔑 USM 密钥库在线自动更新策略
密钥文件的读取与存储采用三级策略,兼顾更新时效与离线可用:
- 一级:缓存目录(
%LOCALAPPDATA%\AetherGate\UsmConfig)—— 在线更新后的最新版本,优先使用 - 二级:安装目录(
UsmConfig)—— 随包发布的种子版本,缓存缺失时兜底 - 三级:现场下载 —— 一、二级均缺失时自动从 API 下载到缓存目录
- 后台下载:发现新版本后自动从服务端下载并更新本地密钥,不影响当前使用
- 首启静默:全新安装首次启动时会自动全量下载全部密钥,完成后静默生效,不打扰用户
网络正常时下载成功后双写缓存目录与安装目录;安装目录无写权限(如 Program Files 非提权运行)时静默跳过,缓存已更新不影响使用,同时记录日志便于排查。
🐛 Bug 修复
🔴 默认安装路径下密钥无法更新
修复默认安装在 C:\Program Files\AetherGate 时,USM 密钥配置更新因权限不足而失败的问题。密钥文件现在写入用户可写的缓存目录,安装位置不再影响更新能力。
🟡 随包 config.json 非法导致版本比对失效
修复随包发布的 UsmConfig/config.json 存在重复键与尾逗号、导致 System.Text.Json 解析失败的问题。新版本重写为 9 游戏合法 JSON,版本比对与更新回写均恢复正常。
💄 体验优化
🔄 密钥文件原子写入 + 内容校验
下载的密钥文件现在采用原子写入:先写 .tmp 临时文件 → 校验内容为合法 JSON → 原子替换目标文件。网络中断或服务端异常时不会留下半截损坏文件,旧版本密钥保持可用。
🛡️ 配置损坏自愈
本地 config.json 若因异常损坏(非法 JSON、磁盘错误等),下次更新时会自动从空配置重建,不会永远卡在"每轮全量重下"的死循环。
📊 通知文案精准化
USM 密钥更新完成后的 Toast 通知现在按实际成功 / 失败名单分别列出,分母与待更新数严格对齐,不再出现"更新 2/1"或给失败游戏报"成功"的错误归因。
📝 日志全面接入 Serilog
USM 密钥更新链路的所有操作(请求、下载、写入、异常)全面接入 Serilog 日志系统,不再使用 Console.WriteLine 丢弃信息,便于用户反馈时快速定位问题。
🛠 技术细节
UsmVersionResponse由硬编码 3 游戏属性改为Dictionary<string, UsmGameInfo>字典模型,服务端新增游戏条目时客户端零改动自动支持(当前接口已下发 9 个游戏)- 版本比对始终以缓存目录
config.json为唯一基线,安装目录仅作文件仓库,避免基线漂移 - 单文件下载异常捕获扩展为
HttpRequestException / TaskCanceledException / UnauthorizedAccessException / IOException / JsonException / UriFormatException,任一游戏失败不影响其他游戏下载 - 遥测事件名修正为
MainView.CheckUsmConfigUpdate(原误写为ProcessPushMessageAsync)
🔧 兼容性说明
- v0.13.3 → v0.13.4 走差量更新:两个版本均在差量更新链路修复之后发布,本次升级只下载发生变化的文件
- 无数据库迁移,无配置变更
- 系统要求:Windows 10 1809(17763)及以上版本
📦 安装与升级
- 下载地址:https://www.aethergate.cn
- 自动升级:已安装 v0.13.3 的用户启动主程序后会自动提示升级
- 系统要求:Windows 10 1809(17763)及以上版本
💡 v0.13.4 是一次"底层架构优化 + 稳定性修复"的版本:USM 密钥库从静态文件进化为在线自动更新,解决了默认安装路径权限、配置损坏、文件名拼写等历史遗留问题,同时为后续支持更多游戏的 USM 转换打下了字典化扩展的基础。



