mcpField
W
wearos-specialist

wearos-specialist

github.com/gitdolucas开发058 次安装34 周前更新
代码仓库

关于 wearos-specialist

面向 Wear OS 应用实现、审查和调试的开发技能,提供围绕小屏交互、电量和生命周期的指导。内容涵盖 Compose、状态管理、数据层、导航与设备验证。

主要功能

  1. 01小屏可扫读界面指导
  2. 02电量与后台行为建议
  3. 03生命周期和状态恢复指导
  4. 04Compose 与数据层实现流程
  5. 05手表端验证与调试清单

适用场景

  1. 01规划 Wear OS 功能实现
  2. 02审查手表应用交互与电量
  3. 03排查生命周期或状态问题

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/gitdolucas/wearos-specialist --skill wearos-specialist

安装后在 Claude Code 中输入/wearos-specialist确认已加载。

包含的文件

除 SKILL.md 外,安装时一起下载的参考资料和脚本。

.markdownlint.jsonc
CODE_OF_CONDUCT.md
LICENSE
CHANGELOG.md
CONTRIBUTING.md
.editorconfig
README.md
SECURITY.md
examples.md
review-checklist.md
perf-battery.md
.cursor/commands/
experts.md
.github/
PULL_REQUEST_TEMPLATE.md
.github/ISSUE_TEMPLATE/
bug_report.yml
config.yml
content_request.yml
.github/workflows/
docs.yml
docs/
how-to-review.md
examples.md
cursor-and-agents.md
how-to-debug-on-watch.md
index.md
perf-battery.md
review-checklist.md
docs/patterns/
haptics.md
state.md
room-queries.md
timers.md
docs/templates/
pr-review.md
feature-plan.md

详细介绍

Wear OS 专家

适用范围

在实现、审查或调试 Wear OS 应用时使用此技能。优化重点:

  • 小屏幕上的快速浏览型 UI
  • 关注电量的行为和后台限制
  • 生命周期正确性(导航/返回行为、可恢复性,以及适用时的环境模式/AOD)
  • 现代 Android 技术栈:Kotlin + 协程/Flow、适用于 Wear OS 的 Compose、类似 MVVM 的状态持有者、Room/DataStore、Navigation,以及手表专属界面(Tile/Complication)

操作原则(Wear OS)

  • 优先考虑易于浏览:清晰显示主要指标/操作;移除次要 UI。
  • 扩大点击目标:优先使用少量大按钮,而不是密集排列的控件。
  • 尽量减少每帧的工作量:避免在主线程上进行繁重计算/IO。
  • 节约电量:后台任务、传感器、计时器和触觉反馈都必须经过审慎设计,并确保生命周期安全。
  • 状态可预测:保持唯一事实来源;在重要场景下,进程终止后应能正确恢复。

默认实现工作流(技术栈优先)

除非有充分理由不这样做,否则添加或更改功能时请遵循以下步骤:

  1. UI(Compose 屏幕)

    • 尽可能让 UI 保持无状态;传入状态和事件回调。
    • 让主要操作最醒目、最容易触及。
    • 避免“花哨”的手势;要考虑到用户手上有汗、身体在移动的情况。
  2. 状态持有者(ViewModel / 状态容器)

    • 负责业务规则和验证;协调临时效果(snack/触觉反馈)。
    • 使用协程;不要阻塞 UI。
    • 暴露不可变的 UI 状态(data class)和事件方法。
  3. 数据层(Room / DataStore)

    • 关系型/历史数据使用 Room;偏好设置和小型键值配置使用 DataStore。
    • 优先使用简单高效的查询;适当时通过 Flow 向 UI 推送数据。
  4. 导航

    • 明确指定路由;避免脆弱的字符串类型参数。
    • 确保返回行为符合手表使用习惯(避免过深的导航栈)。
  5. 验证

    • 制定简短的手表端测试计划:关键流程、快速连续点击、中断、后台运行/返回行为。

可穿戴设备 UX 快速检查清单

  • 从当前屏幕出发,点按一次即可触达主要操作。
  • 所有操作都能用一根拇指完成(无需精准操作)。
  • 默认设置合理(不要强迫用户在执行核心操作前完成设置)。
  • “参考/历史”信息应起辅助作用,而非喧宾夺主。
  • 避免阻塞式流程;仅对破坏性操作进行确认。

性能和重组经验法则

  • 对于非简单的派生值,使用 remember/derivedStateOf 保存。
  • 避免在高频 UI 路径中每次重组都分配新的列表/对象。
  • 优先使用从数据层流向 UI 的 Flow/StateFlow,而不是手动轮询。
  • 计时器更新应保持低频(例如每秒一次),并在不需要时停止。
  • 在可组合项中使用格式化程序/解析器时要谨慎;应缓存它们。

调试工作流(以手表为先)

当设备上的表现“很奇怪”时:

  • 在手表上复现(而非模拟器),并记录:
    • 屏幕、操作顺序、手表状态(AOD 开/关)、省电模式、连接状态
  • 在以下位置添加临时日志:
    • 导航参数
    • 数据读取/写入(Room/DataStore/网络)
    • 传感器/计时器的启动/停止及生命周期回调
  • 检查以下问题:
    • 主线程 IO
    • 状态被错误地重新创建(缺少持久化/恢复)
    • 离开屏幕后,协程/计时器/传感器监听器仍在持续运行

输出模板

实现计划模板

使用此格式提出工作方案:

## Summary
- What user-facing behavior changes (1–3 bullets)

## Files to touch
- `...`

## Data/state changes
- UI state:
- Events:
- Persistence (Room/DataStore):
- Background work (if any):

## Wear OS constraints check
- Glanceability:
- Tap targets:
- Battery/background:
- Lifecycle/restore:

## Test plan
- On-watch manual checks (key flows + edge cases):
审查模板(PR 风格)
## Correctness
- [ ] State transitions are correct under rapid taps / interruptions
- [ ] Data reads/writes are correct and resilient (restart, process death)

## Wear OS UX
- [ ] Primary action is largest and easiest to hit
- [ ] No dense UI / tiny tap targets
- [ ] No blocking flows during primary usage

## Performance/battery
- [ ] No IO on main thread
- [ ] Timers/sensors stop when leaving screen
- [ ] Recomposition hotspots avoided (no per-frame allocations)

## Data layer
- [ ] Room/DataStore usage fits the problem (history vs settings)
- [ ] Queries are minimal and efficient (only load what UI needs)

补充参考资料(深入一层)

评论

支持 Markdown