Skip to content

NoWin0814/StudyTrack

Repository files navigation

学迹 StudyTrack

学迹是一款面向学生场景的 Android 成绩记录与分析应用,主打本地离线、多学期管理、可视化分析和高完成度的 Compose 界面体验。

当前版本已经支持:

  • 首次启动引导
  • 多用户与多学期管理
  • 单条与批量成绩录入
  • 科目管理
  • 首页成绩概览
  • 成绩趋势与统计分析
  • Excel 导入导出
  • 纯白主题与液态玻璃主题
  • 液态玻璃自定义壁纸

项目定位

  • 适合学生、家长或需要长期追踪考试成绩的人群
  • 强调离线可用,数据默认仅保存在本地设备
  • 以“快速记录 + 持续分析 + 视觉体验”作为核心设计方向

核心功能

1. 首次启动引导

  • 首次打开应用会进入欢迎引导页
  • 可直接输入用户名与当前学期名
  • 学期名会直接接入应用内的多学期管理,不需要后续再重复创建

2. 首页总览

  • 显示当前用户、当前学期
  • 显示最近成绩、最高分、优秀率、科目数等关键指标
  • 提供“添加成绩”“批量录入”等快捷入口
  • 小屏设备下已做导航与顶部布局适配

3. 科目管理

  • 支持创建、编辑、删除科目
  • 每个科目可配置满分
  • 科目会作为后续成绩录入和统计分析的基础数据

4. 成绩记录

  • 支持单条新增成绩
  • 支持编辑已有成绩
  • 支持批量录入同一次考试下多个科目的成绩
  • 可记录以下信息:
    • 考试名称
    • 考试日期
    • 分数
    • 考试类型
    • 班排
    • 年排
    • 区排
    • 备注 / 反思

5. 成绩列表

  • 按时间查看全部成绩记录
  • 支持筛选和快速定位
  • 支持跳转编辑和删除

6. 分析能力

  • 按科目查看成绩趋势
  • 查看平均分、最高分、波动情况等分析结果
  • 支持结合分数和排名做长期观察

7. 多用户模式

  • 支持在同一台设备中管理多个用户
  • 每个用户拥有独立的数据空间
  • 可在设置页中添加、重命名、切换、删除用户
  • 适合家庭共用设备或同一设备上记录多名学生成绩

8. 多学期管理

  • 支持创建、重命名、切换、删除学期
  • 导入导出和成绩查看都围绕当前学期进行
  • 适合按“高一下学期”“2026 春季学期”等方式持续管理数据

9. Excel 导入导出

  • 支持将当前学期数据导出为 .xlsx
  • 支持从 Excel 导入成绩数据
  • 导入时支持识别以下字段:
    • 学期
    • 科目
    • 考试名称
    • 时间
    • 分数
    • 满分
    • 分类
    • 班排
    • 年排
    • 区排
    • 反思
  • 导入失败时会给出格式说明与示例指引
  • 导出内容默认按“每行一条成绩记录”组织

10. 个性化与主题

  • 支持 纯白主题
  • 支持 液态玻璃主题
  • 液态玻璃主题下支持:
    • 自定义壁纸
    • 模糊强度调节
    • 折射高度调节
    • 折射幅度调节
    • 玻璃染色调节
    • 边框强度调节
    • 增强色彩层次开关
    • 色差折射开关
  • 当切换到纯白主题时,自定义壁纸会暂时停用;切回液态玻璃主题后恢复

界面特点

  • 基于 Jetpack Compose 构建
  • 使用自定义底部导航与卡片系统
  • 纯白主题采用白卡 + 阴影层次
  • 液态玻璃主题基于 AndroidLiquidGlass / backdrop 方案实现背景采样与玻璃折射效果
  • 全局点击区域已统一为圆角裁切的按压反馈

技术栈

  • 语言:Kotlin
  • UI:Jetpack Compose + Material 3
  • 架构:MVVM
  • 依赖注入:Hilt
  • 本地数据库:Room
  • 本地偏好存储:DataStore
  • 导航:Navigation Compose
  • 图表:MPAndroidChart
  • 图片加载:Coil
  • Excel 处理:Apache POI
  • 液态玻璃效果:io.github.kyant0:backdrop

环境要求

  • Android Studio 最新稳定版
  • JDK 17+ 可编译项目
  • minSdk = 29
  • targetSdk = 36
  • compileSdk = 36

快速开始

1. 克隆项目

git clone https://github.com/wznb666-0814/StudyTrack.git
cd StudyTrack

2. 使用 Android Studio 打开

  • 直接打开项目根目录
  • 等待 Gradle 同步完成

3. 运行调试版本

./gradlew :app:assembleDebug

Windows:

.\gradlew.bat :app:assembleDebug

4. 运行 Kotlin 编译检查

./gradlew :app:compileDebugKotlin

Windows:

.\gradlew.bat :app:compileDebugKotlin

5. 输出 APK

./gradlew :app:assembleRelease

输出目录:

  • Debug APK:app/build/outputs/apk/debug/
  • Release APK:app/build/outputs/apk/release/

导入格式说明

推荐表头顺序如下:

学期 | 科目 | 考试名称 | 时间 | 分数 | 满分 | 分类 | 班排 | 年排 | 区排 | 反思

说明:

  • 学期 列可选,未提供时默认导入到当前学期
  • 时间 建议使用 yyyy-MM-dd
  • 科目时间分数 为核心字段
  • 可先从应用导出一份 Excel,再按同样格式编辑后重新导入

项目结构

app/src/main/java/com/repea/studytrack/
├─ data/              本地数据库、实体、DAO
├─ di/                Hilt 注入模块
├─ repository/        仓库层与偏好配置
├─ ui/
│  ├─ components/     Compose 通用组件
│  ├─ navigation/     页面导航
│  ├─ screens/        各业务页面
│  └─ theme/          主题、颜色与样式
├─ utils/             Excel、评分等工具
└─ viewmodel/         页面状态与业务逻辑

当前版本说明

  • 版本号:V5.0.0
  • 当前方向:围绕“成绩管理 + 多学期 + 高质量本地 UI”持续迭代

隐私说明

  • 当前版本不依赖服务器
  • 用户数据默认仅保存在本地设备
  • 导入导出通过系统文件选择器完成

开源说明

  • 本项目用于学习、展示和个人项目迭代
  • 若你要二次修改或发布,请自行确认第三方依赖许可证和素材使用范围

About

一个记录和管理学习的免费开源APP

Resources

Stars

Watchers

Forks

Packages

 
 
 

Contributors

Languages