Zhengfang Assistant · v1.0.72

正方教务系统Android 客户端

正方教务助手是面向正方教务系统 9.0 的开源 Android 客户端。支持选课、抢课、课表、成绩与考试安排,界面为整套液态玻璃。GPL-3.0 协议开源,无广告,无内购。

正方教务助手周课表界面

1–25 周,含课程名称、时间、地点与周次范围。

按学期汇总,GPA 按学分加权,平时成绩拆到评分项。

即时执行、捡漏与定时任务三种模式,队列与日志分账号隔离。

Course Registration

抢课的三种执行模式

均从课程详情页发起。即时执行用于选课开放瞬间;捡漏模式持续监听退课名额;定时任务在指定时间自动开始,支持锁屏唤醒。

即时执行

INSTANT

在课程详情页发起,提交后再次核对已选列表并返回结果。

捡漏模式

SNIPE

面向满员课程持续查询余量,检测到退课名额后立即提交。

定时任务

SCHEDULED

课程加入队列并设定启动时间,到点自动开始;锁屏状态下由系统按时唤醒。

轮询间隔
1.5秒
并行课程
2门
重试上限
100次
探测超时
3秒

以上为默认值;健康探测超时后自动让行。

同校最多绑定 3 个账号。各账号的队列、日志与定时任务彼此隔离,操作均有记录可查。

抢课工作台多任务并行轮询录屏
抢课工作台 · 任务进度与结果通知
Timetable · Grades · Exams

课表、成绩与考试安排

周视图浏览 1–25 周课程;成绩按学期汇总,GPA 按学分加权;考试的时间、地点与座位号按日期排列。三者均支持 .ics 日历导出。

周课表界面
TIMETABLE

周课表

周视图浏览 1–25 周课程,含课程名称、上课时间、地点与周次范围。

1–25 周周视图课程详情
成绩与 GPA界面
GRADES

成绩与 GPA

成绩按学期汇总,GPA 按学分加权;平时成绩按评分项拆分为进度条,含各项构成。

学期汇总学分加权评分项拆分
考试安排界面
EXAMS

考试安排

期末考试的时间、地点与座位号按日期排列,临近考试置顶。

日期排列考场地点座位号

三者均支持导出 .ics,导入系统日历后按原时间与地点显示。

按周滑动浏览课表与课程详情录屏
按周滑动 · 课程详情
School Support

支持的学校与适配申请

贴一个教务地址就能判断你的学校能不能用;不能用的话,适配申请可以直接在网页提交,不必先装 App。

我的学校能用吗

把你在电脑上登录教务之后地址栏里的地址贴进来:

判据是什么

本工具面向通常被称作「正方 9.0」的那一代教务系统 —— 别看页面上标的版本号,各校标法不一。判据是地址里的路径段,逐条对应 App 自己的解析器:

/jwglxt//jwxt//jwxs//jw/xtglxsxkkbcxcjcxxsxy

前四段是基础路径,后五段是登录后地址栏里出现的功能模块名。见到任一段就是正方 9.0。

申请适配自己的学校

需要学校名称、教务与统一认证地址,以及一个可登录的临时测试账号 —— 登录流程必须实测才能写对,只有地址无法完成适配。网页与 App 内提交进的是同一个服务端。

提交前请先把该账号的密码改成一个临时值 —— 凭据经 HTTPS 传输、加密入库,作者在适配期间能解出明文,完成后会从服务端删除。适配完成请立即改回自己的密码。

已经在用的学校

已额外接入统一身份认证 0 所。不在名录里也能用 —— 教务是正方 9.0 的高校都走正方账号密码直登,功能没有区别。

  • 太原科技大学newjwc.tyust.edu.cn
  • 浙江工业大学www.gdjw.zjut.edu.cn
Background System

背景支持三种图源

预设流光、纯色取色与相册图片,切换即时生效。蒙版深度按画面亮度自动调整,正文对比度不随壁纸变化。

蒙版深度按画面亮度自动调整,正文与控件的对比度不随壁纸变化。

App 内的背景设置弹窗,顶部为预设、颜色、图片三个图源 tab

背景设置弹窗的预设列表,流光一项已勾选

当前预览:预设流光

背景蒙版与模糊设置录屏
背景设置 · 蒙版与模糊调整
Liquid Glass

界面材质系统与三种角色

液态玻璃是 App 端的核心视觉系统:折射、色散与镜面高光均为实时计算,blur + lens + vibrancy 三层叠加,按设备能力分档,API 31 以下回退 Material。网页端本页同期复刻了这套滤镜链,效果减弱但布局与可读性不受影响。

Live on this page · 网页端真折射

Interactive

鼠标移入可拖动大液滴。滴内内容被放大、网格线在边缘弯折、迎光侧有一道亮弧、轮廓上能看到青红彩边 —— 放大、弯折与色散都是逐像素计算的结果,不是预先做好的图片。

In the appMaterial study
正方教务助手中的 Liquid Glass 材质角色说明

真实界面中的材质说明:看得见层级,也看得见内容。

Three roles · 三种角色

Navigation导航层 · 课程列表、详情与设置之间,层级不靠颜色区分轻 · 连续 · 可识别
Control控制层 · 按钮、分段栏与开关均有点按形变反馈紧凑 · 有回应 · 可操作
Modal模态层 · 登录确认、选课成功弹窗浮于内容之上聚焦 · 高对比 · 可退出

Adaptive by device

Android 12+ 使用完整材质;低内存设备自动降低效果;更旧系统回到稳定的 Material 表面。开启减少动态效果后,界面仍保持清晰、可读、可操作。

How it works on the web · 滤镜链

01

高度场

canvas 逐像素求圆角矩形的有符号距离,边缘生成凸面轮廓。

SDF
02

折射位移

高度梯度编码进 RG 通道,作为位移贴图弯折背景像素。

feDisplacementMap
03

色散

R/G/B 三通道按 0.87×/1×/1.13× 分别位移后 screen 合成。

feColorMatrix
04

镜面高光

高度写入 alpha,由光源方向沿边缘打出一圈亮线。

feSpecularLighting

只有 Chromium 会渲染 backdrop-filter 里引用的 SVG 滤镜。Firefox 与 WebKit 能解析但不渲染,因此这里在检测失败时降级为标准玻璃模糊 —— 效果减弱,但布局与可读性不受影响。

Security & Open Source

凭据处理与源码公开

密码走 AndroidKeyStore AES/GCM 加密,仅存设备本地,不上传任何服务器;会话过期 App 自动续期,不连续请求。源码 GPL-3.0 协议公开,可自行编译安装包。

密码仅存本机

AndroidKeyStore 内以 AES/GCM 加密,仅保存在设备本地,不经过任何服务器。

CredentialStore.kt

会话自动续期

登录状态失效时自动续期;续期失败后按间隔重试,不连续请求。

SessionRenewer.kt

源码可审计

采用 GPL-3.0 协议,全部源码公开在 GitHub。

GPL-3.0

双通道更新

GitHub Releases 与本站直链并行。安装包由仓库 CI 自动构建,避免来源不明的二次打包。

release.yml
Product Film · v1.0.72

产品宣传片约一分钟

获取安装包与常见问题

v1.0.72 · Android 7.0+ · GPL-3.0

境内分发 · 无需登录 · 应用内检测更新

v1.0.72 更新了什么