运动 / 魔方训练用倒计时 App,基于 Capacitor 封装的 Android APK。
- 两种时间选择方式
- 拨码盘式滑动(分钟 + 秒,最小单位 1 秒,带惯性吸附)
- 60 / 120 / 180 秒快捷预设
- 倒计时界面
- 自动横屏、屏幕常亮
- 超大白色数字(自适应屏幕)
- 剩余 ≤10s 时数字变橙、底色变暗作为视觉警示
- 支持暂停 / 继续 / 提前结束
- 时间到提醒
- 循环响铃(Web Audio 合成方波,无需音频文件)
- 循环震动
- 整屏红黑闪烁
cd cube-timer
npx serve www # 或任意静态服务器打开 http://localhost:3000 查看(横屏锁定 / 震动 / 常亮等仅在 Android 设备上生效)。
-
在 GitHub 新建一个仓库(可设为 Private)。
-
在本目录初始化 git 并推送:
cd cube-timer git init git add . git commit -m "init cube timer" git branch -M main git remote add origin <你的仓库地址> git push -u origin main
-
推送后会自动触发
.github/workflows/build-apk.yml。 -
在仓库的 Actions 标签里,点击最新一次成功的运行,在底部 Artifacts 处下载
cube-timer-apk.zip,解压后得到cube-timer-debug.apk。 -
把 APK 传到安卓手机安装(首次安装可能需要在系统设置里允许「未知来源」/「安装未知应用」)。
也可以打 tag(如
git tag v1.0 && git push --tags)触发 GitHub Release,APK 会自动作为 Release 资产。
npm install
npx cap add android
npx cap sync android
cd android && ./gradlew assembleDebug
# 产物:android/app/build/outputs/apk/debug/app-debug.apkcube-timer/
├── www/ # Web 端 UI(HTML / CSS / JS)
│ ├── index.html
│ ├── style.css
│ └── app.js
├── capacitor.config.json # Capacitor 配置
├── package.json
├── .github/workflows/
│ └── build-apk.yml # 云端打包工作流
└── README.md
- 当前构建是 debug APK(自签名),可直接安装到任何安卓机。要发布到应用商店需要改为 release 构建并配置签名 keystore。
- 横屏锁定使用 Screen Orientation API,部分早期 Android WebView 可能不支持,会自动回退到当前方向。
- 屏幕常亮使用 Wake Lock API,Android 7+ 的 WebView 均支持。