---
spec_id: YYYY-MM-DD-NNN-<slug>
artifact_kind: prd-requirements
target_surface: app
status: draft
evidence_grade: mixed
author: <作者>
created: YYYY-MM-DD
---

# <需求名称> App/客户端增量需求文档

> 本模板在「00-通用增量需求模板」骨架上叠加 App/客户端 surface lens。行业、团队或合规细节由项目本地 overlay 叠加，不在本 packaged 模板中内置。
>
> **WHAT not HOW**：写交互行为、状态、文案、数据展示、确认留痕和用户感知；不写客户端架构、具体接口字段、原生实现。

---

## Summary [core]

（同通用模板：一句话需求）

## 需求属性确认 [core，App 专属]

| 维度 | 内容 |
| --- | --- |
| 目标端 | iOS / Android / H5 / 小程序 / 其它 |
| 目标用户状态 | 未登录 / 已登录 / 已授权 / 低权限 / 内部测试 / 其它 |
| 入口与导航 | |
| 是否涉及权限或敏感数据 | 是 / 否（若是，写明权限边界和数据类型） |
| 是否涉及关键确认动作 | 是 / 否（若是，写明确认、取消、留痕和再次触发规则） |
| 是否灰度测试 | 是 / 否（若是，补充灰度范围、回滚用户感知） |
| 是否需支持大字号/无障碍 | 是 / 否 |
| 多端表现 | iOS / Android / H5 / Admin 是否需要同步 |

## Change Delta [core]

（同通用模板。App 场景尤其注意：涉及历史功能/已有逻辑时，不得以"沿用历史逻辑""与之前一致"描述，必须明确差异点与影响范围。）

App 改动需额外标注：

| 改动点 | 影响页面/入口 | 影响版本 | 低版本表现 | 是否强制升级 | 证据 tag |
| --- | --- | --- | --- | --- | --- |
| | | | | 是 / 否 | |

## Requirements [core]

（同通用模板：EARS + BR 编号）

客户端需求应把所有用户可见状态写成 R 或 BR，尤其是：

- 入口、导航、按钮可点击条件、禁用原因。
- 加载、空态、错误、无权限、未登录、登录态过期。
- 二次确认、取消、重试、弱网/超时后是否保留用户输入。
- 多端、多语言、大字号、无障碍展示差异。

## Scope Boundaries [core]

（同通用模板：本期做 / 本期不做 / 模块关系）

## Acceptance Examples [core]

（同通用模板：Given/When/Then，每条标 R 编号）

App 验收必须覆盖至少一个真实设备/系统版本组合；关键操作还需覆盖重复点击、网络中断、前后台切换、低权限用户。

## Evidence And Assumptions [core]

（同通用模板。用户数据、权限、第三方规则和关键文案相关主张必须显式标注。）

---

## 整体展示与交互说明 [conditional，App 专属]

> 从整体交互角度说明，列出新增/删减/改动点。页面贴图须与 UI 设计稿同步。不能只覆盖静态页面或主流程，按钮状态、加载态、异常提示、页面切换、禁用逻辑等交互细节都要写到。

| 页面/模块 | 新增/修改/删除 | 入口 | 主流程 | 关键状态 | 设计稿/原型 |
| --- | --- | --- | --- | --- | --- |
| | | | | 加载/空/错误/无权限/未登录 | |

## 页面与交互细节 [conditional，App 专属]

| 需求模块 | 需求点 | 展示与交互说明 | 数据刷新/异常处理 | 数据格式/边界 | 配置项（多语言/灰度） |
| --- | --- | --- | --- | --- | --- |

App 交互细节清单：

- 入口与导航：从哪进入、页面栈、返回行为、深链/推送跳转。
- 状态：加载态、空态、错误态、无网络/弱网、前后台切换后的状态恢复。
- 反馈：Toast/弹窗文案、成功/失败反馈、动效、震动（若有）。
- 操作约束：按钮可点条件、禁用逻辑、防重复提交、倒计时。
- 登录与权限：未登录、登录态过期、授权缺失、资料过期、低权限。
- 无障碍与大字号：是否截断、是否换行、关键提示是否仍可读。

## 关键确认与风险提示 [conditional，App 专属]

> 涉及不可逆操作、敏感数据、付费/扣减、权限授权、对外提交、风险承诺时必填。

| 场景 | 触发条件 | 展示内容 | 用户动作 | 不通过/未确认结果 | 留痕要求 |
| --- | --- | --- | --- | --- | --- |
| 二次确认 | | | 确认/取消 | | |
| 风险提示 | | | 阅读确认/勾选 | | |
| 授权缺失 | | | 去授权/取消 | | |

不得只写「弹提示」。必须写清：谁看到、何时看到、能否跳过、确认后有效期、取消后的状态、确认记录由谁可查。

## 数据展示与刷新 [conditional，App 专属]

| 场景 | 数据来源/口径 | 刷新机制（产品口径） | 无权限/延迟/失败展示 | 数值/文案格式 |
| --- | --- | --- | --- | --- |
| 列表展示 | | 定时/推送/手动刷新 | | |
| 详情展示 | | | | |
| 搜索结果 | | | | |

数据类需求必须明确：精度、单位、排序、颜色规则、百分比/金额格式、时区、刷新机制。具体协议留给 plan。

## 复杂数据场景 [conditional，App 专属]

| 场景 | 适用范围 | 规则 | 数值/格式 |
| --- | --- | --- | --- |

## 多语言文案 [conditional，App 专属]

| 文案 ID | 场景 | 中文（含变量占位符） | 英文 | 其它语言 | 备注 |
| --- | --- | --- | --- | --- | --- |

必须单列：错误提示、确认弹窗、失败提示、低版本提示、权限提示。

## 数据埋点与用户行为证据 [conditional，App 专属]

| 事件 | 触发时机 | 业务目的 | 参数口径（产品级） | 是否涉及审计/合规 |
| --- | --- | --- | --- | --- |
| | | | 不写技术字段名 | 是 / 否 |

埋点是产品分析证据，不替代审计留痕；若需要审计留痕，必须在 Evidence And Assumptions 或项目本地 overlay 中声明。

## Exception Handling [conditional]

（同通用模板，App 重点：弱网/超时、前后台切换、登录态失效、权限变化、重复提交、数据刷新失败。）

## 兼容性与影响面 [conditional，App 专属]

- 影响哪些已有功能：
- 老数据/老用户怎么办：
- 客户端版本：低版本是否兼容、是否强制升级、灰度失败后如何回退。
- 多端一致性：iOS / Android / H5 / Admin 表现是否一致；不一致时写明原因与验收方式。
- 第三方依赖：

## Outstanding Questions [conditional]

（同通用模板）

---

## 与 `spec-app-consistency-audit` 的边界

本模板是 PRD 作者期的 App lens。如果要做「已有 PRD + Figma + 源码」的一致性审计，请走 `spec-app-consistency-audit`。

## 变更记录 / Handoff

（同通用模板）
