Skip to content

Repository files navigation

果壳签到应用图标

果壳签到

为国科大轻新课堂打造的多平台原生客户端,支持课表查询、课程签到、动态二维码生成和课程提醒。

iOS · iPadOS · macOS · Windows · Android

从 Microsoft 获取

功能概览

  • 账号登录:支持 SEP 邮箱或轻新课堂学号,可选择记住密码。
  • 多账户切换:在本机保存多个学校账户,从今日页、桌面侧栏或账户管理页快速切换。
  • 课表查询:查看今日安排,按日期和周次浏览课表,展示学校提供的上课教室,支持本地缓存。
  • 课程目录:浏览当前学期的全部课程,按课程名、编号或教师搜索,查看教师、教室和课程日期;优先展示缓存,按有效期更新,也可手动刷新。
  • 学校考勤:查看每门课程的已签到/未签到数量和课次明细,与本机签到操作记录分别展示。
  • 课程签到:手动签到、自动签到,以及与学校时间同步的动态二维码。
  • 课程偏好:每门课程的提醒、手动签到二次确认和自动签到可跟随账户默认值,也可单独启用或停用;还可禁用某门课程的签到,保留二维码显示。
  • 课程提醒:为已同步课程发送课前本地通知,默认提前 10 分钟,可选择 5、10、15 或 30 分钟,并为单门课程单独设置。
  • 版本更新:自动检查新版本,也可在设置中手动检查;Windows 商店版通过 Microsoft Store 更新。
  • 桌面小组件(仅 Apple 平台):小号、中号课程卡片,展示今日课程与签到状态。
  • 账户隐私:一键将姓名脱敏、隐藏学号,隐藏状态在本机保存。
  • 演示模式:无需账号即可体验课表和模拟签到,支持浅色、深色外观。

运行截图

截图使用演示账号与本地示例数据。

iOS

今日课程日期课表账户信息
iOS 今日课程 iOS 日期课表 iOS 账户信息
更多 iOS 界面
深色外观登录课程二维码
iOS 深色外观 iOS 登录 iOS 课程二维码
签到记录项目源码与致谢免责声明
iOS 签到记录 iOS 项目源码与致谢 iOS 免责声明
设置账户管理(示例数据)
iOS 设置 iOS 账户管理(示例数据)

iPadOS

iPadOS 今日课程

更多 iPadOS 界面
日期课表账户信息
iPadOS 日期课表 iPadOS 账户信息
设置账户管理(示例数据)
iPadOS 设置 iPadOS 账户管理(示例数据)
课程二维码签到记录
iPadOS 课程二维码 iPadOS 签到记录
登录深色外观
iPadOS 登录 iPadOS 深色外观
项目源码与致谢免责声明
iPadOS 项目源码与致谢 iPadOS 免责声明

macOS

macOS 原生侧栏与今日课程

更多 macOS 界面
日期课表账户信息
macOS 日期课表 macOS 账户信息
设置账户管理(示例数据)
macOS 设置 macOS 账户管理(示例数据)
登录课程二维码
macOS 登录 macOS 课程二维码
签到记录项目源码与致谢
macOS 签到记录 macOS 项目源码与致谢
免责声明深色外观
macOS 免责声明 macOS 深色外观

Windows

Windows 原生侧栏与今日课程

更多 Windows 界面
日期课表账户信息
Windows 日期课表 Windows 账户信息与设置入口
设置课程二维码
Windows 外观与课堂偏好设置 Windows 演示课程二维码
签到记录项目源码与致谢
Windows 演示签到记录 Windows 项目源码与致谢

Android

今日课程日期课表账户信息
Android 今日课程 Android 日期课表 Android 账户信息与设置入口
更多 Android 界面
设置课程二维码
Android 外观与课堂偏好设置 Android 演示课程二维码
签到记录项目源码与致谢
Android 演示签到记录 Android 项目源码与致谢

使用说明

支持 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,安装前需使用自己的开发者账号或侧载工具完成签名。

登录与课程签到

  1. 点击「连接学校账号」,使用 SEP 邮箱与密码,或 轻新课堂学号与密码登录。
  2. 在「今日」查看当天安排,或进入「课表」选择日期、查看课程。
  3. 在首页点击「一键签到」,或从课表打开课时详情,查看动态二维码、点击「为本节课程签到」。签到结果以学校返回状态为准。
  4. 在「账户 → 本机签到记录」查看当前账号在本机的操作结果。

欢迎页点击「先体验一下」可进入演示模式,不影响真实账户,也不向学校提交签到,二维码无签到效力。

iPhone / iPad / Android 下拉刷新课程;Mac 点击刷新按钮或按 ⌘R,Windows 点击刷新按钮或按 Ctrl+R。课表页刷新所选日期,切换页面不会重置日期。

缓存课表需同步成功后才能签到;网络恢复后可点击「重新同步」。

添加、切换与移除账户

在「账户 → 切换与管理账户」添加、切换或移除账户。各账户的会话、缓存、签到记录和偏好独立保存;重新打开 App 会恢复上次选中的账户。移除账户仅清除该账户的本机数据,不影响其他账户。

不记住密码也能保留有效会话。会话失效时,已记住密码的账户会尝试自动恢复,否则提示重新登录;恢复过程不会重复提交签到。

自动签到与课程提醒

在「账户 → 设置」调整账户默认偏好,在「课程」详情中单独设置每门课程。只有当前账户运行自动签到和课程提醒,切换账户后会重新安排提醒。课程提醒需要通知权限,不会触发签到。

平台 自动签到运行条件
iOS / iPadOS App 在前台活跃时运行。
macOS / Windows App 运行期间可最小化窗口或切换到其他应用;Mac 也可关闭窗口。退出 App 或设备睡眠后暂停。
Android 通过带常驻通知的前台服务运行;省电、自启动限制或强行停止 App 可能使任务延迟或中断。

桌面小组件(Apple 平台)

登录并同步今日课程后,从系统的小组件列表添加「果壳签到 · 今日课程」。小组件展示当前账户的课程,不会独立联网或签到;数据未更新时请打开 App 刷新。演示模式不提供小组件数据。

Mac 快捷键

快捷键 操作
⌘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.csproj

Apple 核心逻辑测试:

cd apps/apple
swift test

目录结构

UCAS-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 许可证,上游代码的相应版权归原作者及贡献者所有。

免责声明

果壳签到是非官方客户端,与中国科学院大学及轻新课堂服务运营方无隶属、合作或官方授权关系,不代表上述机构或运营方。使用本软件产生的一切风险由用户自行承担。

About

UCAS 果壳签到 app,为国科大轻新课堂打造的多平台原生客户端,支持课表查询、课程签到、动态二维码生成和课程提醒。

Resources

Stars

1 star

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages