2026年11月8日 / 技术 / 项目

弈鉴 3.23:更换签名并迁移到独立新包

3.23.0 启用新的 Android 发布密钥和独立 applicationId,旧版无法原地覆盖升级。

弈鉴 3.23.0 已发布。本次是一次安全与发布流程迁移,不包含新的对局功能。

为什么需要新包

3.22.1 及更早的 APK 使用了曾经提交到公开仓库的调试证书。该证书必须视为已泄露, 不能继续用于新的正式版本。

Android 不允许更换签名证书后原地覆盖旧应用,因此 3.23.0 同时更换了 applicationId:

  • 旧包:com.yijian.xiangqi
  • 新包:com.yijian.xiangqi.v2

新版可以与旧版并存。旧版的本地棋谱不会自动迁移;需要先在旧版中导出, 再在新版中导入。

发布信息

  • 版本:3.23.0(versionCode 53)
  • 构建类型:Release APK,非 debuggable
  • 新证书 SHA-256: 2E79234BD04BAFC2976B77031ABD62572A2C6FDCC02DB35DEFDB55BD67D19ECB
  • APK SHA-256: 289DA0A98136173588D5C1BF957732B0509CA570DCF1DC402640831EEB4EE160
  • Windows EXE SHA-256: E19392E160C83BED572A10E120DDB6E8AF249F562D9F5E50C2F2FDF48D43165D

Windows 便携版目前仍未获得受信任 CA 代码签名,Windows 可能显示 SmartScreen 提示。

同时完成

  • Android release 密钥移到仓库外,并使用 ACL 与 DPAPI 保护;
  • 新增依赖锁、CI、APK 签名/版本校验和密码失败限流;
  • 自有代码改为 MIT License;
  • 清理公开 Git 历史中的旧签名材料。

下载