本项目暂时停止维护与更新。
请转向:onetj-webapp
注:预览图仅为展示效果,数据为虚构。
从同济 API 读取学生基本信息,并在首页展示。男生和女生呈现的头像图不同。
当日气温较高或较低时,会呈现“彩蛋”图。
主页提供 app 各功能的入口。下方展示一系统首页通知,用户可以点进去查看详情。
将用户引向信息办的统一登录网站。
要求补充完成一次登录,以绕过信息办接口,直接访问一系统接口。
提供多线程抢课能力,支持在抢课过程中动态加入想要抢的其他课程。支持后台运行(会主动向用户申请权限)。
注:该功能暂时关闭。
呈现该学生所有学期的成绩。
显示单日课表。可以切换日期。
查看体测体锻数据。
查看四六级考试成绩。
查看该学生本学期全部课程。
查看一系统首页通知详情。
查询全校课表。支持丰富的筛选搜索。
- app 自动更新
- 登录日志采集
允许任何人将经过官方签名的 apk 安装包分享到任意平台。
经过官方签名的 apk 可以从以下渠道获取:
- FlowerBlackG/OneDotTongji GitHub 仓库的 Release 栏目
- app 内自动更新模块检测到更新时,提供的下载地址
- 平台:Android 10+
- 语言:Kotlin
- 构建系统:Gradle (Kotlin DSL)
- 开源许可:木兰宽松许可证第2版
- IDE: Android Studio
- 调试设备:Android 12+
common 存放其他 app 也可共享的组件。
onetongji 存放本 app 的子模块。
你可以注意到,不少功能内都有长相相似的信息卡片。
该卡片由以下部分组成:
- 标题
- 信息区域
- 左侧图标
- 右下角文本
其中,信息区域由多个 Key Value 对组成,之间以一个分隔符隔开。
InfoCard 拥有很强的定制能力。可定制部分包括但不限于:
- 是否有边框
- 信息区域分隔符是什么
- 是否有图标
- 字体大小
- 内部各方向间距。
后台服务。自动抢课的抢课部分需要在后台运行。
用户直接看得见的界面。其中,func 里面存放各个子功能的界面。
所有界面继承自 OneTJActivityBase,这样我们可以在 Base 里面做一些通用工作。通过调整构造函数的传入参数,我们可以自定义一个 activity 有无标题栏,有无返回按钮,有无进度条等。
一些开发工具。对接同济 API 以及开发者自有后端的工具都在这里面。
克隆代码,用最新版 Android Studio 打开。
建议关闭 GarCloudApi.kt 内的日志上报功能。开发过程会产生大量无意义日志,它们会干扰对云端日志的分析。
开发完毕,向主仓库 FlowerBlackG/OneDotTongji 提交 pr 即可。
由衷期待并感谢你的参与!
本项目由个人开发者维护。如果该项目对你有帮助,希望能为本 app 提供宣传。
此外,欢迎体验开发者的另一个项目,一款自动刷锻 app。地址:跑吗