Repository navigation
0.31.11
Pre-release
Pre-release
⚠️ 预发布测试包,不是正式版。普通使用者请装最新正式版 0.31.0,不要装这个包。请用本版(0.31.11):包含周次修复、界面清理、以及本版的缓存优先。
0.31.3 ~ 0.31.6 请勿再装。
本版的核心改动:先看缓存,再偷偷刷新
以前每次进课表/空教室都要等网络;现在:
| 情况 | 现在的表现 |
|---|---|
| 有缓存 | 立刻显示,不转圈、不显示"加载中" |
| 后台刷新成功,内容没变 | 界面一个字都不动(只更新"获取时间") |
| 后台刷新成功,内容有变 | 静默替换,不弹提示 |
| 刷新失败 | 不报红错,只在顶部一行小灰字:显示的是 14:20 的课表 · 点此重试 |
| 会话过期 | 研究生登录已过期,以下是 14:20 的课表 · 重新登录 |
| 从没成功取过 + 失败 | 才显示错误 |
时间一律写「获取于 HH:MM」/「14:20 的课表」,不写"数据截至"——我们只知道本地何时抓到,
不知道学校何时改过。
课表(本科 + 研究生)
- 缓存有效期 24 小时(课表一学期基本不变),下拉/点刷新随时强制;
- 刷新失败时保留缓存,只加一行灰字,不再把界面变成一条红色错误。
空教室
- 只缓存当天(跨天自动失效),有效期 30 分钟;
- 教务取不到时,仍能看到今天早上抓到的状态,并常显「获取于 HH:MM」
—— 空教室是"此刻有没有课"的数据,不能让人误以为是实时的。
数据库
v6 → v7:同步表加内容指纹与缓存版本,新增教室占用快照表。升级不动旧数据。
请这样验
- 断网验缓存:先进课表页让它加载一次 → 开飞行模式 → 杀掉 App 重进课表页
→ 应立刻看到课表,顶部一行灰字「显示的是 … 的课表」;点那行会重试; - 空教室:同样先打开一次(让它抓到今天的占用)→ 飞行模式重进 → 应看到教室列表 + 「获取于 HH:MM」;
- 正常联网:关掉飞行模式、点刷新 → 灰字消失,课表/教室照常;
- 内容没变时:连续点两次刷新,界面不应有任何闪烁或提示;
- 研究生:登录后进课表,表头
第 7 周 / 共 19 周,翻周正常; - 升级后能正常启动(v7 迁移)。
已知限制(下一批)
- 「今日」页与桌面小组件还没接研究生课表(它们按本科学期日期取数据,需要合并研究生课程);
- 空教室「数据超过 1 小时就不再画占用格」的降级还没做(要先改格子渲染,避免把"未知"画成"空");
- 「教室占用」研究生侧暂无数据源。
装了想退回正式版
本包 versionCode 高于正式版,Android 不允许直接降级安装:需先卸载再装正式版,
卸载会清掉登录状态与本地数据。
怎么反馈
请在 issue #2 用文字说明:断网时能否看到缓存课表、那行灰字是否出现、正常联网后是否消失。
不需要截图。