Files
TPSchedule/docs/rschedule-0.4-validation.md
T

35 lines
3.8 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# RSchedule Android 0.4.0+7 验证
日期:2026-10-13。沿用 Android 包名与签名,可覆盖安装;最低 Android 7 / API24。
## 修改与原因
- 点按 Dock 原先在选择回调及父组件更新各启动一次回弹,还将移动速度用于形变。现在点按采用单次320ms平滑移动,拖动松手保留弹性;只有已选滑块按住时放大,宽高增幅约30%。灰色静止玻璃、蓝色实心图标保留。
- 底座和滑块各自采用独立实时背景折射滤镜;不支持的渲染方式使用兼容玻璃效果。
- 课表页右上角刷新与考试更新共用本机保存的 SchoolTerm。首次在线导入先认证,再选择学期;已连接的“更新学期”立即显示选择,未连接时先认证。
- 学期编号73为2026-2027年秋,72为2025-2026年春,71为2025-2026年秋。课表使用路径编号,考试使用xq查询参数;认证后自动跳转目标。实际HTML选中学期不符时拒绝保存。网址目标判断同时比较xq,避免默认考试页阻止跳转。
- 成功导入另一学期会清除另一个页面的旧学期数据和旧教学开始日;同学期刷新保留。选择确认后仅发出请求,读取和首次写入成功后才持久化,取消或失败不替换旧数据。
- 学校学期与教学日期独立保存。HTML及JSON导入带入实际学期,JSON兼容旧学校课程编号;拒绝混合学期。旧保存文件可从学校课程编号/考试termId恢复学期。
- 课表页标题为课表、考试页为考试并保留考试安排标题;个人页保持RSchedule。缺少开始日时显示已保存课程数量和设置按钮,按钮定位学期日期区域。
- 离线HTML只包含保存时的学期,确认页明确说明;查询其他学期使用在线连接。
## 自动验证
- 完整 Flutter 测试130项通过,含原始课表/考试附件解析。附件仅由本机环境变量提供,不加入源码或APK。
- 静态分析:No issues found。
- 精确生产WebView脚本的Node测试通过:身份认证证据、活跃下拉选项、受信源、内嵌表格与排除密码页,并检查学期选项。
- 新回归覆盖逐帧点按位置单调且不改变尺寸、未选图标按住不放大、选中滑块放大超过25%、底座与滑块两个折射表面、减弱动画、学期路径及查询编号、持久化、旧数据升级、同学期刷新、跨学期隔离、写入失败、选择前不导入、认证后选择、取消、HTML学期不一致与考试默认页跳转。
- Android debug构建成功。APK显示versionName0.4.0/versionCode7,minSdk24/targetSdk36。
## 安卓实际检查
API36 Pixel7模拟器成功覆盖安装,原11条课程、8条考试和课程条长度设置保留。课表七列、课表与考试标题、刷新按钮、个人设置更新学期入口已查看。暂时将模拟器测试数据的开始日清空,查看首页提示并点击直接进入日期设置,随后恢复备份。较长拖动时拍到明显放大、变透明的滑块。
截图在dist/screenshots:rschedule-week.png、rschedule-exams.png、rschedule-profile.png、rschedule-start-date.png、rschedule-date-settings.png、rschedule-dock-held.png。截图中教学日期是验证用日期,不代表学校实际开学日期,也不预置到交付包。
本机模拟器GPU驱动限制仍存在,检查时仅以启动参数启用软件渲染并关闭Impeller,交付APK保留手机默认渲染配置。实时折射算法继续通过实际图像像素测试;本次模拟器截图展示兼容玻璃效果,不能作为手机GPU折射验证。
未获取用户真实登录凭据,因此未完成真实学生SSO/验证码及多学期在线查询的端到端验证;这部分仍需用户本人手机测试。
APK SHA256:A1B581A4FC8B286BA5AE22A1383701C2D762FD0AC6BCAEFF0249BD11518C655D。