cssxsh / fix-protocol-version

GNU Affero General Public License v3.0
105 stars 19 forks source link

开启自动登录后不会自动更新新的协议版本 #51

Closed char-46 closed 1 year ago

char-46 commented 1 year ago

开启自动登录后,新版本插件因为找不到服务配置抛出异常进而导致 Mirai Console 退出。在不关闭自动登录的情况下无法手动更新插件的协议版本。

旧版插件协议信息:

ANDROID_PHONE  8.9.58.11170  2023-05-19T11:35+08:00
ANDROID_PAD    8.9.58.11170  2023-05-19T11:35+08:00
ANDROID_WATCH  2.0.8         2019-06-03T20:25:31+08:00
IPAD           8.9.50.611    2023-02-16T15:10:14+08:00
MACOS          6.8.2.21241   2022-03-14T11:11:35+08:00

签名服务器配置为 8.9.63 版本。

从旧版本(未使用签名服务器的版本)更新到新版本后,每次启动 Console 都会导致 Console 退出。

2023-07-13 09:21:38 E/main: java.util.NoSuchElementException: 没有找到对应 8.9.58 的服务配置,file:///path/to/mirai/KFCFactory.json
cssxsh commented 1 year ago

签名服务器 要和 协议版本配套 自动更新只会造成潜在的不一致问题,而且万一上游数据出错,就会更新错误的协议信息

配置文件路径已给出,README也有更新指令的示例

char-46 commented 1 year ago

问题在于不自动更新协议版本的话自动登录会直接让 Mirai Console 崩溃,无法使用 protocol sync 更新协议版本。

是否存在未捕获的异常?

cssxsh commented 1 year ago

https://github.com/mamoe/mirai/issues/2740