全新设计,全新体验。
我重新设计了矿小助的界面、交互与个性化系统,也重新梳理了账号登录和校园服务流程。
从主题、背景和页面动画,到课表、考试、成绩、图书馆与校园卡,我希望这些变化能让矿小助更好看、更顺手,也更可靠。
打开即用,按需登录。
矿小助 2.0 取消了首屏登录。现在打开 App,可以直接进入主页,无需先绑定或登录学校账号。
只有在使用课表导入、成绩、考试、图书馆、校园卡等需要学校身份的服务时,才会按需登录;如果已经保存过账号,App 会尽可能在后台恢复登录状态,减少重复操作。
在线适配,减少更新。
过去学校系统调整后,矿小助往往也需要重新发布版本,旧版本中的部分功能可能很快就无法继续使用。
从 2.0 开始,部分校园服务的适配可以在线调整。以后学校页面或数据发生变化时,我会尽可能及时完成适配,尽量不再因为一次小调整就要求大家重新下载 App。
必要的功能升级和安全更新,我仍会正常发布;但那些只是为了恢复原有功能的更新,希望可以尽量少一些。
后端重写,全面升级。
矿小助 2.0 不只重做了 App,背后的服务也完成了一次彻底重写:原有的 Python 后端已经全部迁移到 Go。
这次重写为在线适配、应用通知和后续功能更新打下了更稳定、更清晰的基础。大家不需要改变使用习惯,但在日常使用、问题定位和后续维护上,它会带来更可靠的体验。
详细更新内容如下:
全新的外观与个性化
- 将外观设置重新设计为独立的「个性化」页面,主题、背景和显示效果更直观。
- 支持浅色、深色和跟随系统三种外观,并新增多种主题颜色。
- 新增多张浅色与深色壁纸,也可以从系统相册选择喜欢的照片。
- 支持为浅色和深色模式分别设置壁纸,切换外观时背景也会自动跟随。
- 新增沉浸式背景、卡片透明度、背景模糊和液态玻璃等显示效果。
- 液态玻璃支持果冻效果,以及饱和度、折射和色散调节。
- 新增首次外观引导,也可以随时重新打开进行对比和调整。
- 重新设计悬浮菜单、日期选择器、确认弹窗、底部面板和大量页面动画,并优化各种背景下的文字可读性。
课表、考试与成绩
- 重做课表底层数据,让导入、编辑、显示和日历导出更加统一、稳定。
- 重新设计 22 周周次指示器,当前周更加醒目,拖动和点击切换都更流畅。
- 导入课表后会根据开学日期自动计算并跳转到当前周。
- 优化十节制课表、重叠课程、不同课程时长和底部导航栏遮挡问题。
- 首次打开课表时会展示完整示例,添加或导入真实课程后自动消失。
- 优化课程添加、编辑、删除、节次选择和周次选择,并修复部分自定义课程无法删除的问题。
- 保留课表导出、系统分享和日历订阅能力。
- 考试倒计时支持直接编辑和删除,首次使用时会展示不同剩余时间的示例。
- 成绩页保留搜索、排序、筛选、加权成绩和绩点统计,并新增更完整的示例。
- 成绩支持自动逐页提取、翻页、汇总和去重,不再需要手动切换每一页。
- 只有全部页面成功读取后才更新本地成绩,中途失败不会留下只导入一半的数据。
更聪明的登录与导入
- 取消首屏强制登录,打开 App 可以直接进入主页,需要校园服务时再登录。
- 新增统一账号管理,可以分别管理融合门户和教务系统账号,退出一个不会影响另一个。
- 登录状态失效后会优先尝试在后台恢复,需要验证码或修改密码时才打断用户。
- 融合门户和教务系统之间最多只帮助填写用户名,绝不会跨系统填写或提交密码。
- 新增验证码自动识别,两个识别模型会相互确认;不一致时自动换一张再试,失败后仍可手动输入。
- 本科课表、考试和成绩会在登录后自动进入正确的查询页面。
- 自动操作时持续显示当前步骤,可以随时停止并切换为手动操作。
- 学校页面发生变化时,导航方式可以在线更新,不必每次都等待 App 发版。
- 如果最新适配暂时不可用,App 还会尝试最近一次成功方案和随包备用方案。
- 断网、登录过期和学校临时维护会分别提示,不会全部显示成一句“导入失败”。
图书馆与校园服务
- 全面升级图书搜索、馆藏详情、当前借阅、借阅历史和一键续借。
- 图书搜索支持分页,搜索结果和借阅记录会自动补充封面。
- 当前借阅和借阅历史支持离线缓存,暂时断网时仍能查看最近结果。
- 网络刷新失败不会清空已经显示的借阅记录,也不会让页面一直停在加载状态。
- 图书馆登录状态可以尽量自动恢复,确实需要操作时才显示登录页。
- 借阅记录与当前账号绑定,切换账号时不会把不同用户的数据混在一起。
- 续借失败后不会自动重复提交,避免同一次操作执行多次。
- 新增新版研究生课表自动导入,自动进入查询页并找到学期选择区域;学期仍由用户确认。
- 新增校园卡充值导航,可以自动进入正确入口。
- 新增宿舍电费充值导航,并能根据已保存的校区、楼栋和房间自动填写地址。
- App 不会填写金额、选择支付方式或替用户提交支付,最后一步始终由用户完成。
通知与版本更新
- 新增 App 内通知,可根据 Android/iOS、Stable/Beta、版本和构建号精准展示。
- 通知支持折叠、展开、关闭和安全网页跳转,短时断网也能读取最近缓存。
- 新增 Stable 与 Beta 两条更新轨道,正式用户和测试用户互不干扰。
- 版本检查会同时比较版本号和构建号,同一个版本也能正确发现更高构建。
- 修复已经是最新版时,手动检查更新仍可能提示请求失败的问题。
- 新增完整更新内容网站,Android、App Store 和 TestFlight 都可以关联各自入口。
- 页面顶部会根据当前设备展示最新构建:Android 前往下载,iPhone/iPad 前往 App Store 或 TestFlight。
更快、更稳,也更省空间
- 原有 Python 后端已经完全迁移到 Go,版本更新、通知、校园服务适配和问题排查都重新建设。
- 每项校园服务相互隔离并保留备用方案,一个功能调整不容易影响其他功能。
- 学校系统发生小调整后可以更快在线修复,尽量减少“必须先更新 App 才能继续使用”。
- Test 与 Production 完全隔离,测试内容不会进入正式用户环境。
- 优化沉浸式页面、课表翻页和背景切换,减少快速操作时的卡顿和闪动。
- 多处重复请求改为共享同一次任务,减少重复登录、重复刷新和不必要的等待。
- Android 通用安装包从约 68.1 MiB 降到约 27.3 MiB,下载体积减少约 60%。
- 优化 Android 全屏显示、系统导航栏、新版设备兼容,以及 Android/iOS 启动页尺寸。
- 支持点击输入框外自动收起键盘,改善 App 表单和网页登录操作。
隐私与问题排查
- 普通使用记录只保存功能状态、数量、耗时和错误类型,不记录密码、验证码和登录凭证。
- 只有用户同意隐私政策后才启用问题诊断;撤回同意后会停止上传并清空等待中的数据。
- 课表、考试和成绩页面只在导入过程中临时保留,成功或取消后立即释放。
- 真正失败时才收集必要页面,并在 App 和后端分别清理敏感内容。
- 多页导入可以定位失败发生在哪一页、哪一步;反馈时提供用户 ID,也能帮助我更快找到问题。
问题修复
- 修复深色模式下版本更新弹窗部分文字看不清的问题。
- 修复十节制课表被底部导航栏遮挡,以及键盘弹出时布局溢出的问题。
- 修复部分自定义课程无法删除、登录后校园卡余额没有及时刷新的问题。
- 修复课表、考试和成绩导入停在教务主页或一直等待的问题。
- 修复自动操作失败后无法及时切换手动模式的问题。
- 修复学校页面地址不变时,App 可能误判已经到达目标页面的问题。
- 修复登录中间页被过早判断为成功,以及退出后旧登录任务仍更新账号状态的问题。
- 修复图书馆断网刷新后最近借阅记录被清空的问题。
- 修复部分新版 Android 设备的 WebView、全屏导航和启动页适配问题。
- 修复浅色页面文字、图标对比度不足,以及部分弹窗背景透出的显示问题。
2.0 背后的开发规模
2.0 不是一次普通改版,而是 App 与后端共同完成的一次系统级升级。为了让这次变化更直观,我也整理了截至发布前的 Git 与源码统计:
| 统计项 |
结果 |
| 前后端提交 |
115 次(App 82、后端 33) |
| 第一方源码增删改 |
135,631 行(新增 107,111、删除 28,520) |
| 最终净增长 |
78,597 行 |
| 当前第一方源码 |
101,045 行 |
| 历史触达文件 |
941 个 |
| 静态测试声明 |
701 个 |
当前源码中,产品代码约 64,878 行,测试代码约 33,278 行,构建与辅助工具约 2,889 行;测试代码量约为产品代码的 51.3%。按主要语言看,Dart 约 80,652 行,Go 约 15,873 行。
这些数字背后,涵盖了全新 UI 与个性化系统、账号与登录链路、课表 / 考试 / 成绩、图书馆、校园卡与宿舍电量、在线适配与故障回退、通知与诊断,以及 Android / iOS 发布与更新内容管理等工作。
特别提醒
矿小助 2.0 更新了个性化配置结构。升级后,主题和背景设置会恢复一次默认配置,需要重新选择喜欢的外观与壁纸;系统相册中的原始照片不会受到影响。
写在最后
今年,我也正式迈入了人生的新阶段。虽然已经离开校园,但作为矿小助的独立开发者,我仍会像过去一样,继续认真维护这款 App。
之后,我会开通自己的公众号,用来和大家交流产品、分享近况,也听取大家的反馈。如果你对矿小助有新的需求或想法,欢迎随时告诉我。能够继续用技术解决身边真实的问题,是我一直想做的事。
感谢大家六年来的支持。正是这些使用、反馈与认可,让我有机会在创造产品的过程中找到并实现自己的价值。
我始终相信,AI 时代或许是独立开发者最好的时代之一。它让我有能力把更多想法变成现实,也让我更加期待,未来能够借助 AI,做出更多真正有用、也能打动人的产品。
矿小助还会继续,新的故事也才刚刚开始。