Skip to main content

Posture Checker

一个配合 BLE 坐姿传感器使用的 React Native App,覆盖配对、实时反馈、趋势查看和纠正提醒。

  • User Research
  • UX Design
  • UI Design
  • React Native
  • Mobile Development
  • Product Design
Posture Checker 应用界面

为什么做坐姿,为什么连硬件也做

我每天大部分时间都在桌前度过,而市面上大多数坐姿 App 要么依赖手机陀螺仪(只有把手机绑在身上才有效),要么依赖摄像头检测(要求固定坐姿、侵入感强)。两者都无法在正常工作日中存活。

我想验证一个假设:一颗小型专用传感器,通过 Bluetooth Low Energy 与用户随身携带的手机配对,能否弥补这个缺口。它需要持续、低摩擦,同时仍然留在用户熟悉的移动界面里。

问题发现

对现有坐姿 App 的扫描揭示了一个反复出现的模式:实时反馈要么过于侵入(每次弯腰都震动一下),要么完全缺失(只有一天结束后的总结)。行为改变需要中间地带:当坐姿持续差到值得关注时才触发反馈,同时提供用户可以轻松回顾的趋势数据。

这个判断给了项目两个不可妥协的约束:一个能持续捕获坐姿数据的传感器,不依赖手机摆放位置;一个尊重用户注意力、但仍能在日常中发挥作用的提醒模型。

项目流程

作为独立 designer-builder,我把项目视为一个连续的循环:设计约束引导硬件决策,硬件行为重塑 UI,而 UI 又暴露了数据层的新问题。

  1. 01

    调研

    审计坐姿 App 和可穿戴设备;定义目标用户(久坐的知识工作者和学生)及核心反馈缺口。

  2. 02

    硬件原型

    用 Arduino 搭建基于 BLE 广播的坐姿传感器,验证小型低功耗设备能够持续传输坐姿数据。

  3. 03

    系统架构

    定义传感器到 React Native App 再到本地存储和 Firebase 的数据流,包括重连和离线行为。

  4. 04

    UX 设计

    围绕实时状态、每日目标、趋势和快捷设置,线框化一个单仪表板的移动端体验。

  5. 05

    BLE 集成

    实现配对流程、实时数据流和重连处理。这个部分最容易在真实环境中静默失效。

  6. 06

    提醒策略调优

    引入基于持续时长的推送通知,只在姿势持续不佳时才提醒,而不是每次瞬间弯腰都提示;随后根据用户实际关心的内容优化趋势和历史界面。

Posture Checker 系统架构图

系统架构

架构横跨 BLE 坐姿传感器、React Native 客户端(iOS + Android)、用于离线韧性的本地存储、Firebase 同步与认证、趋势图表,以及用于纠正提醒的推送通知。因为我是一个人设计和实现这个系统,每一层都必须刻意保持简单。

Posture Checker 用户活动流程

用户活动流程

用户流程覆盖 App 启动、蓝牙配对、设备检测、实时坐姿分析、纠正通知和进度可视化。配对被视为一个关键产品时刻,而不是藏在设置里的步骤,因为整个产品的价值取决于它第一次就能成功。

硬件与连接决策

选择 BLE 而非 USB 或 Wi-Fi 有三点原因:它保留了小型可穿戴设备的全天电池续航;它能与用户随身携带的手机干净配对;它的连接模型(广播 → 连接 → 流式传输)能映射到一个可以从断连中恢复的移动端 UX。

采样率设为 1 Hz。更高的采样率增加了电池消耗和噪声,但没有改变行为信号。真正重要的是持续数秒的坐姿,而不是毫秒级抖动。本地存储保留原始数据流,确保即便网络不可用,趋势和历史仍然可用。

线框图

线框图将坐姿状态、每日目标、设置、统计和核心导航组织为单一仪表板结构。核心假设是:每天几次、每次几秒钟的快速查看,比一个用户必须"进入并探索"的重度 App 更有价值。

Posture Checker 线框图

高保真原型

高保真原型将追踪、目标进度、分析和设置浓缩为一个适合每日重复使用的平易近人界面。信息密度刻意控制在很低的水平:主视图在回答任何其他问题之前,先回答"我现在坐得怎么样?"

Posture Checker 高保真原型界面

设计反馈模型

产品中最冒险的 UX 决策是何时打断用户。每次弯腰都通知,会训练用户忽略 App;只在一天结束时汇总,又错过了纠正行为的关键时刻。

我采用了一个基于持续时长的模型:反馈仅在姿势持续不佳超过可配置时长后才触发。结合趋势可视化,它让 App 更像一个习惯工具,而不是一个一直打扰人的提醒器。用户看到的是"今天 vs 昨天",而不只是"你又驼背了"。

Posture Checker 最终应用界面

构建概览

构建覆盖了完整的产品面:一个硬件配对移动 App、围绕配对和提醒展开的交互模型,以及让坐姿习惯变得可见的趋势界面。

2交付平台(iOS + Android,基于 React Native)
1集成定制 BLE 坐姿传感器
5+核心界面(状态、目标、趋势、历史、设置)
1 Hz坐姿采样频率
软硬件集成
设计并实现 BLE 配对流程,将 React Native App 连接到定制坐姿传感器,包括重连处理和实时数据流。
提醒策略
推送通知仅在持续坐姿不佳超过阈值后触发,支持行为改变而不因瞬间弯腰打扰用户。
信息呈现
实时状态、每日目标、历史趋势和良好/驼背可视化统一整合为单一移动端仪表板,用于日常快速查看。

反思

Posture Checker 是我不再把"设计"和"工程"视为独立阶段的那个项目。硬件约束(电池、采样频率、BLE 重连)重塑了 UI;UI 揭示了系统实际需要保留哪些数据;提醒策略只有在设计意图和数据管线同时调优后才真正生效。

最终交付的构建证明了一个独立的 designer-builder 可以将一个硬件集成移动产品从概念推进到完整的多屏可体验状态。如果继续迭代,我会优先做端侧趋势建模,让更多判断在本机完成,而不是依赖云端往返。