Skip to content

GdeiAssistant/GdeiAssistant-Android

Repository files navigation

广东二师助手安卓客户端

广东二师助手安卓客户端,基于 Kotlin 与 Jetpack Compose 构建,面向广东第二师范学院校园场景,围绕教务查询、校园服务、社区互动与账号管理提供统一的 Android 端体验。

当前版本:2.0.0-PRO

功能概览

校园服务

  • 成绩查询
  • 课表查询
  • 四六级查询
  • 考研查询
  • 教室查询
  • 教学评价
  • 图书馆
  • 校园卡
  • 校园卡充值
  • 校园卡挂失
  • 电费查询
  • 数据中心
  • 校园黄页

校园生活

  • 二手交易
  • 全民快递
  • 失物招领
  • 校园树洞
  • 卖室友
  • 表白墙
  • 校园话题
  • 拍好校园

资讯信息

  • 新闻通知
  • 系统通知公告
  • 互动消息

个人中心

  • 登录与登录态恢复
  • 资料展示与编辑
  • 头像管理
  • 绑定手机
  • 绑定邮箱
  • 隐私设置
  • 登录记录
  • 用户数据导出与下载
  • 意见反馈
  • 界面和外观(主题切换、字体大小、语言)
  • 关于应用
  • 退出登录

技术栈

  • Kotlin
  • Jetpack Compose + Material 3
  • Hilt
  • Retrofit + OkHttp + Gson
  • DataStore
  • EncryptedSharedPreferences
  • Coil
  • JWT 登录态管理

工程结构

GdeiAssistant-Android/
├── app/src/main/java/cn/gdeiassistant/
│   ├── data/
│   ├── di/
│   ├── model/
│   ├── network/
│   │   ├── api/
│   │   └── mock/
│   ├── service/
│   ├── ui/
│   │   ├── home/
│   │   ├── messages/
│   │   ├── profile/
│   │   ├── grade/
│   │   ├── schedule/
│   │   ├── card/
│   │   ├── book/
│   │   ├── marketplace/
│   │   ├── lostfound/
│   │   ├── secret/
│   │   ├── dating/
│   │   ├── delivery/
│   │   ├── express/
│   │   ├── topic/
│   │   ├── photograph/
│   │   └── navigation/
│   └── util/
├── app/src/main/res/
└── github/

架构说明

1. 数据源模式

项目支持两种数据源:

  • remote:请求真实后端接口
  • mock:使用本地模拟数据

应用默认开启 mock 模式,便于本地联调和页面验证。切换入口位于应用内关于页,切换后建议重启应用以确保网络层与页面状态全部刷新。

当前 mock 登录账号:

  • 用户名:gdeiassistant
  • 密码:gdeiassistant

2. 登录态与安全存储

当前登录链路由以下组件协作完成:

  • SessionManager:统一管理当前用户、Token 与 Cookie 会话
  • TokenUtils:基于 EncryptedSharedPreferences 的本地安全存储
  • AuthInterceptor:注入鉴权头并处理登录态请求
  • ResponseInterceptor:统一响应拦截与错误处理

3. 网络层

网络层基于 Retrofit 与 OkHttp,统一负责:

  • API Service 注入
  • Bearer Token 注入
  • Cookie 持久化与线程安全管理
  • Mock 路由分发
  • Gson JSON 序列化与反序列化
  • 统一错误归一化处理

4. UI 与导航

应用界面基于 Jetpack Compose 构建,当前主导航已经拆分为:

  • service graph
  • community graph
  • information graph
  • account graph

业务页面按模块拆分在 ui/ 目录下,便于逐步迭代和独立维护。

5. 主题系统

应用支持亮色/暗色主题切换,默认跟随系统:

  • Material You 动态取色(Android 12+),低版本回退到 Campus Green 静态色板
  • 用户可在"界面和外观"页面手动选择浅色/深色/跟随系统
  • 字体大小四档可调(小/标准/大/超大)
  • 主题与字体偏好通过独立 DataStore (user_preferences) 持久化

运行环境

  • Android Studio 最新稳定版
  • JDK 17
  • Android SDK 35
  • Android 8.0 及以上设备或模拟器

快速部署

1. 克隆仓库

git clone https://github.com/GdeiAssistant/GdeiAssistant-Android.git
cd GdeiAssistant-Android

2. 准备本地环境

  • 使用 Android Studio 打开项目并完成 Gradle Sync
  • 确保本机已安装 Android SDK 35 与 Build Tools
  • 若命令行环境尚未生成 local.properties,请先通过 Android Studio 打开一次项目,或手动补充本地 sdk.dir

3. 构建 Debug 安装包

./gradlew :app:assembleDebug

构建成功后,APK 默认输出到:

app/build/outputs/apk/debug/app-debug.apk

4. 安装到设备

./gradlew :app:installDebug

5. 运行方式

  • mock 模式:适合本地开发、UI 联调、回归验证
  • remote 模式:适合连接真实后端接口进行联调

后端接口位置

本项目对应的后端仓库为:

  • GitHub:https://github.com/GdeiAssistant/GdeiAssistant
  • Wiki:https://github.com/GdeiAssistant/GdeiAssistant/wiki

开源协议

本项目采用 Apache License 2.0 开源协议。

你可以在遵守协议条款的前提下使用、修改和分发本项目代码。

免责声明

  1. 本项目为校园场景应用客户端,功能和数据能力以学校实际开放范围、后端接口能力及账号权限为准。
  2. 仓库中的 mock 数据仅用于本地开发和界面联调,不代表真实校园业务数据。
  3. 本项目不对因第三方服务异常、学校系统调整、网络问题或接口变更导致的功能不可用承担责任。
  4. 使用者在接入真实后端或部署衍生版本时,应自行确保账号、隐私、日志和数据安全合规。

About

广东第二师范学院校园助手 Android 客户端,基于 Jetpack Compose + Material 3 构建。涵盖成绩课表等校园服务查询、二手交易与失物招领等社区互动,以及校园卡、图书馆、数据查询等实用工具。

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages