# count-down **Repository Path**: asd12580/count-down ## Basic Information - **Project Name**: count-down - **Description**: 用来倒计时的app,适用于健身倒计时,技术用的是kotlin - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2026-06-18 - **Last Updated**: 2026-06-18 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # 健身倒计时 一个专为健身训练设计的 Android 倒计时应用,使用 Kotlin + Jetpack Compose 构建。 ## 功能特性 - **组数循环训练**:支持设置多组训练,组间自动休息,完成后自动进入下一组 - **双模式计时**:健身倒计时模式 + 休息计时模式,一键切换 - **圆环进度显示**:大字体实时显示剩余时间,圆环进度条直观展示进度 - **铃声提醒**:计时结束自动播放铃声提醒,支持从系统选择自定义铃声 - **设置持久化**:所有设置(时长、组数、铃声)自动保存,下次启动自动恢复 - **明亮主题**:活力橙主色调,大字体高对比度,适合运动时查看 ## 技术栈 | 技术 | 用途 | |------|------| | Kotlin | 开发语言 | | Jetpack Compose | UI 框架 | | Material3 | 设计系统 | | DataStore | 用户设置持久化 | | CountDownTimer | 计时逻辑 | | MediaPlayer | 铃声播放 | | Navigation Compose | 页面导航 | ## 项目结构 ``` app/src/main/java/com/example/countdown/ ├── MainActivity.kt # 主Activity + 导航 ├── CountDownApp.kt # Application + 通知通道 ├── data/ │ ├── SettingsDataStore.kt # DataStore 设置存储 │ └── SettingsRepository.kt # 设置仓库 ├── viewmodel/ │ └── TimerViewModel.kt # 计时器逻辑 + 组数循环 └── ui/ ├── theme/ # 主题配色 ├── screen/ │ ├── TimerScreen.kt # 主计时界面 │ └── SettingsScreen.kt # 设置界面 └── component/ ├── TimerDisplay.kt # 圆环计时显示 ├── TimerButton.kt # 控制按钮 └── SettingItem.kt # 设置项组件 ``` ## 使用说明 ### 主界面 - **开始**:启动当前组计时 - **暂停**:暂停计时,可继续 - **重置**:重置当前计时 - **重新开始**:重置所有组数,从第一组开始 ### 设置界面 - **倒计时时长**:每组训练时长(5~600秒) - **休息时长**:组间休息时长(5~300秒) - **组数**:训练总组数(1~20组) - **提醒铃声**:从系统铃声库中选择自定义铃声 ### 自动循环逻辑 1. 第 1 组健身倒计时 → 计时结束播放铃声 → 自动进入休息 2. 休息倒计时 → 休息结束 → 自动进入第 2 组 3. 重复直到完成所有组数 4. 最后一组完成后显示"全部完成" ## 构建要求 - Android Studio Hedgehog 或更高版本 - JDK 17 - Android SDK 34 - Gradle 8.2 ## 构建命令 ```bash ./gradlew build ``` 或在 Windows 上: ```bash gradlew.bat build ``` ## 安装 APK 构建完成后,Debug APK 位于: ``` app/build/outputs/apk/debug/app-debug.apk ``` ## 截图 > 主界面显示大字体倒计时和圆环进度,设置界面通过滑块调整时长和组数。 ## 许可证 MIT License