# PostureGuard **Repository Path**: kingsunrain/PostureGuard ## Basic Information - **Project Name**: PostureGuard - **Description**: 姿态守护 - 防止低头看手机的健康提醒应用 - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2026-05-11 - **Last Updated**: 2026-05-11 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # 姿态守护 (PostureGuard) 防止低头看手机的健康提醒应用。通过加速度传感器实时监测手机角度,当用户长时间低头使用手机时,自动弹出通知并播放提醒声音。 ## 功能特性 - **后台持续监测**:前台服务常驻后台,使用任何应用时都能监测手机角度 - **智能提醒**:低头时间超过阈值时,弹出通知 + 播放提醒声音 - **三个可自定义参数**: - **监测时间窗口**:多长时间内统计低头比例(默认 1 分钟) - **低头比例阈值**:低头时间占比超过此值触发提醒(默认 90%) - **角度阈值**:低于此角度视为低头(默认 75°) - **开机自启动**:可选开机后自动开始监测 - **实时显示**:主界面实时显示当前角度、低头比例、剩余时间 ## 技术原理 - 使用加速度传感器(Accelerometer)检测手机倾斜角度 - 通过 `acos(|z| / magnitude)` 公式计算手机与水平面的夹角 - 低通滤波(ALPHA=0.15)平滑传感器数据,减少抖动 - 前台服务(Foreground Service)保证后台稳定运行 - WakeLock 保持 CPU 活跃以持续采集传感器数据 ## 安装 下载 `apk/PostureGuard-v1.0-debug.apk` 安装到 Android 手机即可。 > 最低支持 Android 8.0 (API 26) ## 使用说明 1. 打开「姿态守护」应用 2. 点击「开始监测」按钮,授予通知权限和前台服务权限 3. 应用进入后台持续监测,使用任何应用时低头过久都会提醒 4. 点击「设置」可调整监测参数 5. 点击「停止监测」可随时关闭 ## 权限说明 | 权限 | 用途 | |---|---| | 前台服务 | 后台持续监测手机角度 | | 通知 | 低头提醒通知 | | 开机启动 | 可选,开机后自动开始监测 | | 唤醒锁 | 保持 CPU 运行以采集传感器数据 | ## 项目结构 ``` app/src/main/java/com/postureguard/ ├── MainActivity.java # 主界面:角度显示、开始/停止监测 ├── SettingsActivity.java # 设置界面:三个可调参数 ├── AngleMonitorService.java # 核心服务:传感器监听、角度计算、提醒触发 └── BootReceiver.java # 开机自启动广播接收器 ``` ## 构建 ```bash # 需要 Android SDK (compileSdk 34) 和 JDK 17 ./gradlew assembleDebug ``` 构建产物位于 `app/build/outputs/apk/debug/app-debug.apk` ## 许可证 MIT License