为国科大轻新课堂打造的多平台原生客户端,支持课表查询、课程签到、动态二维码生成和课程提醒。
iOS · iPadOS · macOS · Windows · Android
- 账号登录:支持 SEP 邮箱或轻新课堂学号,可选择记住密码。
- 多账户切换:在本机保存多个学校账户,从今日页、桌面侧栏或账户管理页快速切换。
- 课表查询:查看今日安排,按日期和周次浏览课表,展示学校提供的上课教室,支持本地缓存。
- 课程目录:浏览当前学期的全部课程,按课程名、编号或教师搜索,查看教师、教室和课程日期;优先展示缓存,按有效期更新,也可手动刷新。
- 学校考勤:查看每门课程的已签到/未签到数量和课次明细,与本机签到操作记录分别展示。
- 课程签到:手动签到、自动签到,以及与学校时间同步的动态二维码。
- 课程偏好:每门课程的提醒、手动签到二次确认和自动签到可跟随账户默认值,也可单独启用或停用;还可禁用某门课程的签到,保留二维码显示。
- 课程提醒:为已同步课程发送课前本地通知,默认提前 10 分钟,可选择 5、10、15 或 30 分钟,并为单门课程单独设置。
- 版本更新:自动检查新版本,也可在设置中手动检查;Windows 商店版通过 Microsoft Store 更新。
- 桌面小组件(仅 Apple 平台):小号、中号课程卡片,展示今日课程与签到状态。
- 账户隐私:一键将姓名脱敏、隐藏学号,隐藏状态在本机保存。
- 演示模式:无需账号即可体验课表和模拟签到,支持浅色、深色外观。
截图使用演示账号与本地示例数据。
| 今日课程 | 日期课表 | 账户信息 |
|---|---|---|
![]() |
![]() |
![]() |
| 今日课程 | 日期课表 | 账户信息 |
|---|---|---|
![]() |
![]() |
![]() |
支持 iOS 16+、iPadOS 16+、macOS 14+、Windows 10 1809+ 和 Android 6.0+。
| 平台 | 下载方式 | 说明 |
|---|---|---|
| Windows | Microsoft Store(推荐)或 GitHub Releases | 商店版支持自动更新;Releases 提供 x64、ARM64 便携包和双架构旁加载包。 |
| Android | GitHub Releases | 下载正式签名的 APK;首次安装时,系统可能要求允许从浏览器或文件管理器安装应用。 |
| macOS | GitHub Releases | 提供同时支持 Apple 芯片与 Intel Mac 的通用 PKG 和 ZIP。PKG 未使用 Apple Developer Installer 证书签名。 |
| iOS / iPadOS | GitHub Releases | 提供未签名 IPA,安装前需使用自己的开发者账号或侧载工具完成签名。 |
- 点击「连接学校账号」,使用 SEP 邮箱与密码,或 轻新课堂学号与密码登录。
- 在「今日」查看当天安排,或进入「课表」选择日期、查看课程。
- 在首页点击「一键签到」,或从课表打开课时详情,查看动态二维码、点击「为本节课程签到」。签到结果以学校返回状态为准。
- 在「账户 → 本机签到记录」查看当前账号在本机的操作结果。
欢迎页点击「先体验一下」可进入演示模式,不影响真实账户,也不向学校提交签到,二维码无签到效力。
iPhone / iPad / Android 下拉刷新课程;Mac 点击刷新按钮或按 ⌘R,Windows 点击刷新按钮或按 Ctrl+R。课表页刷新所选日期,切换页面不会重置日期。
缓存课表需同步成功后才能签到;网络恢复后可点击「重新同步」。
在「账户 → 切换与管理账户」添加、切换或移除账户。各账户的会话、缓存、签到记录和偏好独立保存;重新打开 App 会恢复上次选中的账户。移除账户仅清除该账户的本机数据,不影响其他账户。
不记住密码也能保留有效会话。会话失效时,已记住密码的账户会尝试自动恢复,否则提示重新登录;恢复过程不会重复提交签到。
在「账户 → 设置」调整账户默认偏好,在「课程」详情中单独设置每门课程。只有当前账户运行自动签到和课程提醒,切换账户后会重新安排提醒。课程提醒需要通知权限,不会触发签到。
| 平台 | 自动签到运行条件 |
|---|---|
| iOS / iPadOS | App 在前台活跃时运行。 |
| macOS / Windows | App 运行期间可最小化窗口或切换到其他应用;Mac 也可关闭窗口。退出 App 或设备睡眠后暂停。 |
| Android | 通过带常驻通知的前台服务运行;省电、自启动限制或强行停止 App 可能使任务延迟或中断。 |
登录并同步今日课程后,从系统的小组件列表添加「果壳签到 · 今日课程」。小组件展示当前账户的课程,不会独立联网或签到;数据未更新时请打开 App 刷新。演示模式不提供小组件数据。
| 快捷键 | 操作 |
|---|---|
⌘1 / ⌘2 / ⌘3 / ⌘4 |
切换今日 / 课表 / 课程 / 账户 |
⌘R |
刷新当前课程目录或课程考勤;在课表和其他页面刷新当前课表数据 |
⌘, |
打开账户与偏好设置 |
⌘⇧L |
添加学校账户 |
环境要求、工程入口、签名与构建方法见各平台开发说明:
| 平台 | 工程与开发说明 |
|---|---|
| Apple | Swift / SwiftUI |
| Windows | unpackaged WinUI 3 + 独立 MSIX 打包项目 |
| Android | .NET for Android + Material 3 |
Windows 与 Android 分别打开各平台目录下的 .slnx,通过项目引用共享纯 C# 核心库,无需安装另一平台的工具链。
从仓库根目录运行 C# 核心逻辑测试:
dotnet test packages/dotnet/UCASSignIn.Core.Tests/UCASSignIn.Core.Tests.csprojApple 核心逻辑测试:
cd apps/apple
swift testUCAS-Sign-In/
├── .github/workflows/ 多平台持续集成与自动打包
├── apps/
│ ├── apple/ Apple 工程、Swift Package、测试与签名配置
│ ├── windows/ WinUI 3 应用与独立打包项目
│ └── android/ 原生 Material 3 Android 应用
├── packages/dotnet/ C# 核心库及测试
├── shared/ 共用 C# 信息与虚构测试样例
├── docs/ 相关文档及图片
├── eng/ 统一版本源与生成的平台版本配置
├── scripts/
│ ├── publish/ 跨平台构建与发布脚本
│ ├── signing/ Android 与 Windows 签名配置脚本
│ └── lib/ 发布脚本的共用函数
├── tools/Versioning/ 跨平台版本号管理工具
├── PRIVACY.md 隐私政策
└── LICENSE AGPL-3.0 协议全文
完整说明请参阅《果壳签到隐私政策》。
- 学校账户与课程请求通过 HTTPS 直接发送至学校服务,不经过本项目自建服务器。
- 账户凭据由本机安全存储保护,仅在选择记住密码时持久保存密码;不提供跨设备账户同步。
- 本机保留各账户最近 100 条签到操作记录,不代表学校完整考勤。
- App 不申请定位、通讯录或相机权限,未集成广告或统计 SDK。
本项目的轻新课堂接口实现参考了以下项目,感谢原作者及贡献者的开源分享:
本项目及上述参考项目均采用 AGPL-3.0 许可证,上游代码的相应版权归原作者及贡献者所有。
果壳签到是非官方客户端,与中国科学院大学及轻新课堂服务运营方无隶属、合作或官方授权关系,不代表上述机构或运营方。使用本软件产生的一切风险由用户自行承担。














































