目录

PulsePilot · openvela 智能手环快应用

PulsePilot 是基于 openvela 快应用框架打造的「一眼读懂、一步可操作」智能手环应用。它把表盘、健康数据、运动、通知、历史趋势、同步与低功耗控制收进一条清晰的手环交互路径,适配 openvela 手环模拟器,无需实体硬件即可复现。

PulsePilot Emulator PulsePilot Emulator PulsePilot Emulator PulsePilot Emulator PulsePilot Emulator PulsePilot Emulator PulsePilot Emulator

已实现功能

  • Orbit Face 表盘:当前时间、日期、模拟心率、步数与实时状态。
  • Typo Face 表盘:第二种表盘风格,可持久化切换。
  • Heart Signal:实时变化的模拟心率、心率区间与信号状态。
  • Move Route:步数、8000 步目标百分比与环形进度展示。
  • Sport Pilot:WALK/RUN 模式,开始、暂停、继续、结束,记录时长、步数、距离与卡路里。
  • Notifications:模拟来电、短信、App 通知,弹窗、已读与 dismiss 状态。
  • History:本地 7 日步数趋势柱状图。
  • Sync + Power:Bluetooth LE 同步状态、同步完成反馈、SLEEP/TAP TO WAKE 低功耗模拟。
  • 交互:底部左右箭头与左右滑动切换 7 个页面;页面状态在运行时持续刷新。

环境要求

  • Node.js 18+(本机 AIoT IDE 使用 Node.js 25 也可构建)
  • macOS Apple Silicon 可用于快应用开发与模拟器调试
  • AIoT Toolkit 2.0.5(已锁定在 package.json 的开发依赖中)
  • openvela 手环模拟器资源(默认读取 ~/.vela

快速开始

cd /Users/ding/Documents/PulsePilot
npm install
npm run demo

npm run build 会生成:

dist/com.application.watch.demo.debug.1.0.0.rpk

npm run emulator 会启动(或连接)xiaomi_band_10 手环模拟器,安装 RPK,启动 PulsePilot,并保存一张运行截图到 docs/demo/pulsepilot-emulator.png

也可以使用 npm run demo 一键完成构建、安装、启动和截图。

也可以直接在 AIoT IDE 中打开项目,选择手环模拟器后点击「调试」。

常用命令

npm run start      # 监听模式开发
npm run build      # 开发构建并生成 debug RPK
npm run release    # 发布构建(需要 IDE/工具链签名配置)
npm run lint       # 快应用源码编译校验
npm run emulator   # 安装并运行到 openvela 手环模拟器
npm run demo       # build + emulator,一键复现

项目结构

src/
├── app.ux                         # 应用生命周期
├── manifest.json                  # watch 设备、system.storage 与路由配置
├── common/logo.png                # 应用图标
└── pages/
    ├── index/index.ux             # 7 页面核心体验与模拟数据逻辑
    └── detail/detail.ux            # 预留详情页
scripts/run-emulator.js             # 模拟器安装、启动、截图脚本
docs/demo/                          # 运行演示截图

交互说明

  1. 在表盘点击 SWITCH FACE,在 Orbit Face 与 Typo Face 间切换;选择会写入 system.storage
  2. 左右滑动屏幕,或点击底部 ‹ / ›,依次浏览心率、步数、运动、通知、历史、同步与低功耗页面。
  3. 运动页可切换 WALK/RUN,点击 STARTPAUSE/RESUMEFINISH
  4. 通知页点击 SIMULATE 查看不同类型通知;同步页可触发 SYNCED 反馈;点击 SLEEP 后点击屏幕唤醒。

复现与异常处理

  • 模拟心率、步数、运动计时均在前端本地生成,断开网络不影响演示。
  • 表盘偏好写入 system.storage;读取失败时会自动回退到 Orbit Face。
  • 计时器在页面销毁时清理,避免重复定时器导致长期运行资源泄漏。
  • npm install 报 npm cache 权限错误,请先修复当前用户的 npm cache 所有权,再重新安装依赖;不要使用 sudo npm install

赛事提交检查

代码仓库已经包含源代码、Debug RPK 生成方式、运行截图、README、LICENSE 和第三方依赖声明。正式提交前还需把 5 分钟内演示视频与面向评委的方案 PPT 一并上传;它们是赛事交付物,不应只依赖仓库代码自动生成。

开源与致谢

本项目为 openvela 快应用赛题作品,遵循 MIT License;AIoT Toolkit、openvela SDK 与模拟器依照其各自许可证使用。框架资料见 openvela 官方文档

关于

PulsePilot 是基于 openvela 快应用框架打造的「一眼读懂、一步可操作」智能手环应用。它支持表盘、健康数据、运动、通知、历史趋势、同步与低功耗控制。

829.0 KB
邀请码
    Gitlink(确实开源)
  • 加入我们
  • 官网邮箱:gitlink@ccf.org.cn
  • QQ群
  • QQ群
  • 公众号
  • 公众号

版权所有:中国计算机学会技术支持:开源发展技术委员会
京ICP备13000930号-9 京公网安备 11010802047560号