BJTU MIS Android v1.4.0
本版本在 v1.3.1 的第三方服务能力基础上进一步推出插件大厅与开发者投稿平台,同时集中改进抢课、缓存、成绩明细和作业 Agent 的稳定性。
插件大厅与开发者平台
- 新增 Android 插件大厅,支持搜索、分类筛选、查看权限与远程来源,以及安装、更新和管理插件。
- 目录服务不可用时自动展示最近一次成功缓存;已经安装的插件可继续离线运行。
- 新增 Web 插件大厅、详情页、GitHub 投稿入口、开发者管理页及管理员审核后台。
- 开发者可使用 GitHub 登录并提交自己拥有管理权限的公开仓库;平台会异步完成静态校验并发布不可变版本快照。
- Manifest 升级至 schema v2,支持插件分类、标签、许可证和 text、secret、URL、数字、布尔值、选项等类型化配置。
- 插件配置仅保存在用户设备,并通过 Android Keystore 与 AES-GCM 加密;必填配置完成前插件不会启用。
- 安装和更新时同时校验归档 SHA-256 与 dist 内容摘要,并检查插件 ID、仓库和 commit 信息;校验失败不会替换现有可用版本。
- 保留 GitHub 仓库直链导入作为高级入口,并明确标记其未经平台快照校验。
抢课功能
- 重构可选课程列表,兼容更多 MIS 页面结构、空壳页面、分页结果和不同课组入口。
- 新增课组筛选、课程号/名称搜索、课序号搜索、余量筛选和分页浏览。
- 支持一次勾选多门课程并批量尝试;批量入口不可用时自动回退为逐门抢课。
- 完善批量抢课的部分成功记录、连续验证码处理和逐门成功提醒。
- 优化换课安全性:目标课程不可选或没有余量时不会提前退掉原课程。
- 抢课成功使用独立高优先级通知通道,支持顶部提醒、提示音和强化震动。
成绩与学习数据
- 当前成绩支持自动读取并直接展示平时、期中、期末等成绩构成。
- 增强标签—数值型成绩详情及不同教务页面结构的解析兼容性。
- 优化课程资源和作业加载:课程资源改为按需刷新,作业附件渐进加载,减少全量同步等待。
智能助手与作业 Agent
- 修复工作区 Agent 受到网页搜索工具预算限制后提前结束的问题,可继续完成文件读取、生成和结果打包。
- 避免正常的文件路径和代码片段被最终答案审查误判为内部工具协议。
- 提升 Pyodide 缓存重建和本地 Python wheel 锁定的可靠性。
- 作业附件自动导入限制为最多 5 个、合计 20 MiB,超出部分会明确提示用户手动选择。
- 优化邮件摘要默认扫描范围和正文读取数量,降低长邮箱列表带来的等待时间。
- Agent 仍不会自动提交课程作业。
性能与稳定性
- App 首次启动改为缓存优先,已有数据可更快展示。
- 缓存现在会校验学期、课程、文件夹和查询参数,避免显示与当前请求不匹配的旧快照。
- 网络访问失败时继续使用匹配的本地数据,提高弱网和离线可用性。
- 缓存 VE 会话上下文并为列表请求设置超时,减少重复初始化和长时间卡住。
- 智能助手页面无需等待个人资料网络请求即可打开,姓名会在后台加载后自动更新。
- 增加关键同步、会话和课程资源流程的性能记录,便于定位慢请求。
网站与部署
- 官网新增插件大厅、插件详情、投稿和管理入口。
- 完善官网发布信息、备用下载提示以及移动端布局。
- 增加静态站点和插件目录平台的容器化部署、Nginx 配置与回滚说明。
注意事项
- 插件的“自动校验通过”不代表已经人工审核,请仅安装来源可信、权限合理的插件。
- 插件更新后需要重新确认权限;必填配置未完成时插件保持禁用。
- 插件大厅投稿要求
schema_version: 2;原有 schema v1 插件仍可通过高级直链方式兼容导入。 - 当前仅支持公开 GitHub 仓库,不支持私有仓库、客户端自动源码构建或静默更新。