Skip to content

Youwenqwq/ysu-client

Repository files navigation

燕大终端图标

燕大终端

详细文档(中文) · English

燕山大学教务系统第三方 Android 客户端


本项目为 第三方客户端,与燕山大学官方无任何关联。 仅供个人学习交流,代码完全由 AI 进行编写, 人工仅进行了基本设计调试与粗略审计,使用即默认了解并接受相关风险,请勿用于侵犯他人权益或违反学校规定的场景。

这是什么

燕大终端是一个 Android 应用,可以让你更方便地使用燕山大学教务系统。设计初衷是解决第三方课表需手动更新, 而今日校园 App 加载又过于缓慢,导致信息查询低效率的问题。

本项目实现了以下功能:

  • 登录:CAS 统一认证,支持验证码和 MFA 多因素验证,记住登录状态; 内置登录速率限制保护,防止频繁登录触发风控
  • 查成绩:按学期筛选,查看统计、分布和排名;支持学期 GPA 计算与学位课程标识
  • 看课表:合并理论课与实验课,按周切换,桌面和移动端双布局; 实时高亮当前课程,支持课程活动签到 / 签退
  • 查考试:按学期查看考试安排
  • 看绩点:学分和绩点一目了然
  • 培养方案:查看课程完成情况和学业预警
  • 评教:支持学生评教功能,评教支持批量一键自动填写最高分

应用通过 Capacitor 打包为 Android WebView 壳应用,支持 OTA 热更新与 APK 外壳版本检测。

数据来源与安全性

燕大终端 App 的所有业务逻辑均在本地实现,从官方教务系统获取数据并保存在本地,中间不经过任何其他服务器。 登录之后的凭据数据存储在本地,凭据通过系统安全存储(Android Keystore / iOS Keychain)加密保存。

为保证教务系统数据不受意外修改,本项目除学生评教外,均仅实现了数据查询功能。

安装

GitHub Releases 下载最新的 APK 安装包。

如遇网络故障,可在应用内配置 GitHub 代理镜像。设置入口会在出现网络故障时弹出。

兼容性

应用运行在系统 WebView 中。如遇渲染异常,请检查 WebView 版本是否过低—— 最低要求 Chromium v111。可通过 Play Store 等方式更新 Android System WebView。

技术文档

如果你对项目的技术实现感兴趣,可以查看:

相关项目

业务逻辑参考以下项目实现:

协议

本项目源代码按 GPL-3.0 协议 开放。

About

一个第三方的燕山大学教务系统 App,主要实现各类查询与批量评教功能,简洁轻快

Resources

License

Stars

Watchers

Forks

Packages

 
 
 

Contributors