U8 Chat · 单聊快速建群(发起群聊)产品需求文档 PRD
| 项目 | 内容 |
|---|
| 文档版本 | v1.8 —— 在 v1.7 基础上:删掉「建群失败」那一屏(失败提示沿用现有设计,不再重画)。v1.7 —— 按产品 2026-10-09 口径大改:完整沿用现有「新建群组」流程与页面(选人页 → 设置群名称 → 立即创建),唯一的差别=第一个用户(当前单聊对象)锁定;Web 端本期不做,只做移动端 |
| 功能模块 | 单聊 → 快速建群(用户可见的名字:发起群聊) |
| 适用端 | 移动端 iOS / Android(Web / Desktop 本期不做 —— 改动较大,见 7.1) |
| 入口 | 单聊资料页(iOS:点聊天页右上角头像进入;安卓:点右上角 ···) |
| 演示与逐屏 | 同目录 index.html(10 屏:iOS 8 + 安卓 2) |
| 参照产品 | U8 现有的「创建群聊 / 新建群组」—— 本次不是新流程,只是它的一个入口变体 |
| 设计稿 | 选人页、设置群名称页都沿用现有画板(umRiEY84pJQmfomeNkbjOf:「联系人-新建群组」安卓 2282:64975、已选态 2282:65092、设置群名称 2282:65230);资料页的「发起群聊」成员行是本功能新增(无画板)。最终以 UI 为准 |
| 口径来源 | 2026-10-09 产品拍板:① 完整沿用现有建群流程与页面(含「设置群名称」这一步);② 唯一差别=第一个用户锁定(已选、不可取消);③ 不限人数(选人页不显示人数计数);④ 群名按成员名预填、可改;⑤ Web 端本期不做,只做移动端 |
本演示与 PRD 都是「UI 设计之前的输入」:讲清楚「入口在哪、和现有建群流程差在哪一步、群名怎么来」。最终视觉以 UI 为准。
一、背景与目标
1.1 背景
U8 目前只有一条建群路径:首页 + →「创建群聊」→ 选人页 → 设置群名称 → 立即创建。
问题出在最高频的那个建群动机上:「我正在跟某人聊天,想再拉两个人一起说」。
- 微信在这条路上只要两步:单聊里点 + → 勾人 → 完成。
- U8 现在要先离开这个会话、回到首页、点 +、进选人页,再把刚才聊天的那个人从几百个联系人里重新找出来 —— 不但绕,而且容易漏掉「本来就在聊的那个人」。
1.2 目标
- 在单聊里加一个入口,点一下就把当前对话的人带进选人页(已选、不可取消),再选几个人即可成团。
- 不新造流程、不新造页面:选人页与设置群名称页完全沿用现有「新建群组」的那两页,降低开发与 UI 成本。
- 把「快」做在细节上:设置群名称页的群名已经按成员名字填好,想快就直接点「立即创建」。
1.3 不做什么(一句话)
不做新的选人页 / 新的建群流程、不做建群前的确认页、不做 Web / Desktop 端、不做「把原单聊升级成群聊」(不迁移聊天记录)。
二、范围
2.1 本期做
| # | 模块 | 内容 |
|---|
| ① | 移动端入口 | 单聊资料页新增一行 「发起群聊」(左侧文字 + 右侧「对方头像 32 + 加号 32」,整行可点)★ 新增。建群失败的提示沿用现有设计,本次不重新画页面 |
| ② | 选人页 | 完全沿用现有「新建群组」选人页(右下角箭头、右侧字母索引、已选胶囊、按拼音分组、搜索);唯一的差别=当前单聊对象默认已选、不可取消(勾选按钮置灰) |
| ③ | 人数 | 不限人数:选人页不显示「已选 / 上限」计数,也不新增人数上限规则 |
| ④ | 设置群名称页 | 沿用现有第二步;群名已按成员名字预填(可改),想快就直接「立即创建」 |
| ⑤ | 建群结果 | 建群成功 → 直接跳转到新群聊天页;我自动成为群主;新群里出现一条系统提示(沿用客户端已有文案);原单聊完全不变 |
| ⑥ | 安卓端 | 与 iOS 同一套规则,版式照安卓画板 |
2.2 本期不做
| 不做的事 | 说明 |
|---|
| Web / Desktop 端 | 改动较大,本期不做(见 7.1)。Web 端的入口、选人弹窗、建群后的抽屉切换都不在本次范围 |
| 新的选人页 / 新的设置群名称页 | 一律沿用现有「新建群组」的页面,不自创样式 |
| 建群前的确认页 | 不做(现有流程本来也没有) |
| 把原单聊升级成新群 / 迁移聊天记录 | 技术上是「新建一个群」,与原单聊完全无关(见 5.5) |
| 群名去重、群名冲突校验 | 沿用现有规则 |
| 拉人时的申请 / 审批流 | 不做,直接入群 |
三、流程:与现有「创建群聊」逐步对照
| 步骤 | 现有「创建群聊」(首页 + → 创建群聊) | 快速建群「发起群聊」(本次) |
|---|
| 1 | 首页 + 菜单 → 点「创建群聊」 | 单聊资料页 → 点「发起群聊」 |
| 2 | 选人页(从零选) | 同一个选人页 —— 差别只有:当前单聊对象已经选上、取消不掉 |
| 3 | 设置群名称(手填群名) | 同一个页面 —— 差别只有:群名已经按成员名字填好(可改) |
| 4 | 点「立即创建」→ 进新群 | 完全一样 |
一句话:这是同一条流程的另一个入口,中途只多做了一件事 —— 把当前单聊的人预先放进选人页。
四、本次唯一的改动:锁定第一个用户
| 项 | 规则 |
|---|
| 谁被锁定 | 当前单聊的对象(不是我自己;我自己本来就在群里) |
| 初始状态 | 在选人页里默认已勾选,并且在「已选区」里显示 |
| 能不能取消 | 不能 —— 点它没有反应(勾选按钮置灰,让人一眼看出「这个改不了」) |
| 为什么锁定 | 用户是从「和这个人聊天」进来的,「带上他」是这条路径的前提;允许取消就可能建出一个和当前对话无关的群 |
| 副产物 | 因为永远至少有对方一个人,选人页右下角的箭头一直是可以点的(不会出现「一个都没选」的置灰态) |
| 能不能改人数上限 | 不限人数(见 2.1 ③) |
五、群名:沿用「设置群名称」这一步,但已经填好
5.1 规则
| 项 | 规则 |
|---|
| 这一步还在不在 | 在(与现有流程完全一致:选人页 → 设置群名称 → 立即创建) |
| 群名怎么来 | 打开这一步时就已经填好:按成员昵称拼接(如「毛毛、王力宏、李维」) |
| 用户能不能改 | 能,就是现有的输入框,点进去改即可 |
| 拼法 | 不超过 3 人全部列出;超过 3 人 → 「毛毛、王力宏、李维 等 5 人」(与系统提示里那套取名规则一致) |
| 「我」算不算 | 不算(只列其他成员的昵称)—— 是否要把「我」也列上,见待确认 ⑤ |
| 成员重名 | 沿用现有规则(是否追加区分字符),见待确认 ⑤ |
| 群名过长 / 为空 | 沿用现有「新建群组」的校验与提示,本次不新增规则 |
| 为什么这么做 | 既保留了原有流程(群名这一步还在,用户想改就改),又满足了「发起群聊」要的「快」(不用手打名字) |
5.2 这样做的取舍
- 好处:完全不动现有建群逻辑与页面,开发和 UI 都最省;用户对「建群要起名字」这件事有预期。
- 代价:比微信那种「勾完直接就建好了」多一次点击 —— 但这个点击可以直接点右上角「立即创建」,不需要输入任何东西。
六、建群结果与其它规则
6.1 建群成功之后
| 项 | 规则 |
|---|
| 成功 | 直接跳转到新群的聊天页(与原单聊不是同一个会话) |
| 群名 | 上一步填的那个(默认是成员名拼接) |
| 我 | 创建者,自动成为群主(2026-10-09 产品拍板);群内权限跟「新建群组」一致 |
| 群类型 | 与「新建群组」的默认一致,不新增规则 |
| 新群里的系统提示 | 群创建后出现一条系统提示,文案沿用客户端已开发好的那条:「您已添加XXX加入群聊」(2026-10-09 产品拍板,不新造文案) |
| 原单聊 | 完全不变:会话保留在列表原位置、不置顶、不折叠、未读数不变、不插任何系统消息 |
| 新群在列表里的位置 | 按「新会话」的自然时间排在列表顶部(不做置顶、不做「刚创建」标记) |
| 被拉的人 | 不发通知、不需要同意,直接进群(与「新建群组」一致) |
| 失败 | 不新增任何页面:沿用现有的建群失败提示(既有设计);仍是「停在当前页 + 保留已勾选的人」,用户可以直接重试 |
| 连点 | 请求进行中,右下角箭头 / 「立即创建」不可再点(不允许建出两个群) |
| 建群成功后跳转 | 不存在「跳转失败」(2026-10-09 产品确认),不做半成功态的兜底提示 |
6.2 聊天记录:不带(2026-10-09 拍板)
| 问题 | 结论 |
|---|
| 原单聊的历史消息会进新群吗? | 不会。 新群是一个全新的会话:除 6.1 那条系统提示外没有任何历史消息 |
| 原单聊里的消息会不会被「搬走」/「清空」? | 不会,原单聊一个字节都不动 |
| 为什么不做 | 用户对「建群」的期待本来就是「开一个新的地方说话」,不是「把这段聊天升级」;与微信一致,也是最省的做法 |
6.3 入口:成员行(移动端)
| 项 | 规则 |
|---|
| 位置 | 单聊资料页:在按钮行(音频通话 / 视频通话 / 静音 / 更多)下方、操作卡(删除联系人 / 发送消息)上方 |
| 形态 | 独立白卡:左侧「发起群聊」文字(与「删除联系人 / 发送消息」同一档字号)+ 右侧「对方头像 32 + 加号 32」;整行可点 |
| 为什么带文字 | 只放「头像 + +」会出现没有文案的控件,第一次看到的人不知道那是什么 |
| 为什么不只做文字 | 右侧那个「头像 + +」表达的是「这个人会一起进去」,纯文字说不出来 |
| 只显示对方头像 | 不显示自己的头像(省纵向空间) |
| 哪些情况不显示这一行 | ① 对方是陌生人(非互关好友,对齐既有 NOT_MUTUAL_FRIEND 73083);② 对方是官方账号 / 服务通知;③ 拉黑关系;④ 对方账号已注销 / 已删除;⑤ 会话是群聊或频道。整行不出现(不是置灰、也不是点了报错) |
七、各端与影响面
7.1 Web / Desktop:本期不做
| 项 | 说明 |
|---|
| 结论 | Web / Desktop 端本次不做(产品 2026-10-09:*改动较大*) |
| 具体不做 | Web「用户信息」抽屉里的入口、Web 的选人弹窗、建群后抽屉切成群信息 —— 都不在本次范围 |
| 原因 | Web 端的资料抽屉是另一套版式,改起来牵动的面比移动端大;先把移动端做出来 |
| 遗留 | Web 端后续要做时,规则与移动端一致即可(同一条流程、同样的锁定与预填),只需单独出 Web 的版式 |
7.2 与既有功能的关系
| 既有功能 | 关系 |
|---|
| 首页 + → 创建群聊(新建群组) | 同一套页面、同一套建群能力。区别只有:入口、「当前对象已选」、群名预填 |
| 群资料页 → 添加成员 | 视觉上与本次的「成员行」同款(头像 + 加号),但语义不同:那边是「往这个群里加人」,本次是「新建一个群」 |
| 单聊资料页的既有按钮行 / 操作卡 | 本次不动 |
| 文件夹 / 聊天列表 | 新群就是一个普通会话,会被现有规则(文件夹包含、置顶、静音)正常处理,本次不新增规则 |
7.3 本次改哪些、哪些一个字不动
| 位置 | 本次 |
|---|
| 单聊资料页(iOS / 安卓) | ★ 改:加一行「发起群聊」 |
| 选人页 | ★ 改 1 处:当前对象默认已选且不可取消;不显示人数计数。其余照原样 |
| 设置群名称页 | ★ 改 1 处:群名预填。其余照原样 |
| 首页 + 菜单、聊天页标题、会话列表、群资料页 | 不改 |
| Web / Desktop | 不改(本期不做) |
八、文案(建议稿)
| 位置 | 文案 | 备注 |
|---|
| 资料页 · 成员行 | 发起群聊 | 移动端行内文字 |
| 选人页 · 标题 | 选择联系人 | 沿用现有 |
| 选人页 · 人数计数 | 不显示 | 不限人数 |
| 设置群名称页 · 标题 / 按钮 | 新建群组 / 立即创建 | 沿用现有 |
| 设置群名称页 · 预填群名 | 毛毛、王力宏、李维 | 超过 3 人 → 毛毛、王力宏、李维 等 5 人 |
| 新群 · 系统提示 | 您已添加 王力宏、李维 加入群聊 | 客户端已有的文案 |
| 建群失败 | 沿用现有文案(不新增) | 既有设计,本次不重画页面 |
九、边界与异常
| 场景 | 表现 |
|---|
| 对方是陌生人 / 官方账号 / 拉黑关系 | 资料页没有成员行(整行不显示),没有任何提示 |
| 只带了对方一个人就去建群 | 允许(选人页箭头一直可点),建出的是「我 + 他」的 2 人群 —— 是否需要拦一下,见待确认 ⑥ |
| 群名为空 | 按现有「新建群组」的校验处理(不允许空名) |
| 群名过长 | 按现有规则截断 / 提示 |
| 建群请求中网络中断 | 沿用现有的失败提示(不新增页面),停在当前页 |
| 连点 | 只建一个群(箭头 / 按钮 loading 或置灰) |
| 多人同时建群造成重名 | 允许重名,不做校验 |
十、待确认
| # | 待确认 | 影响 | 建议 |
|---|
| ① | 资料页成员行的确切位置与间距 | 版式 | 见 6.3;最终以 UI 为准 |
| ② | 选人页不显示人数计数这一处,UI 是否要改成显示「已选 N 人」 | 版式 | 建议就不显示(不限人数) |
| ③ | 「被拉进群的人要不要收到通知」 | 体验 | 与「新建群组」一致(现有规则),本次不改 |
| ④ | 是否需要「谁可以拉我进群」的隐私开关 | 隐私 | U8 无此项,建议本次不做 |
| ⑤ | 预填群名的细节:「我」算不算在内、成员重名怎么处理、群名字符上限 | 文案 | 与系统提示里那套取名规则保持一致;由开发对齐 |
| ⑥ | 只带对方一人建 2 人群是否需要拦截 | 规则 | 建议不拦(与「新建群组」一致);如果要拦,需要新增规则 |
| ⑦ | Web / Desktop 端什么时候做 | 排期 | 产品定(本次已明确不做) |
附:演示屏清单(同目录 index.html,共 10 屏)
| # | 屏 id | 端 | 内容 | 优先级 |
|---|
| 1 | E_A1 | iOS | 单聊聊天页(入口是右上角头像) | P1 |
| 2 | E_A2 | iOS | 单聊资料页 · 新增「发起群聊」成员行 ★ | P0 |
| 3 | E_A3 | 安卓 | 资料页 · 同一行(安卓版式) | P0 |
| 4 | E_B1 | iOS | 选择联系人(对方已选、不可取消) ★ | P0 |
| 5 | E_B2 | iOS | 选择联系人 · 已选多人(右下箭头可点) | P0 |
| 6 | E_B3 | 安卓 | 选择联系人(安卓版式) | P1 |
| 7 | E_C1 | iOS | 设置群名称(群名已填好,可改) ★ | P0 |
| 8 | E_C2 | iOS | 建群成功 → 新群聊天页(群名 + 系统提示) | P0 |
| 9 | E_C3 | iOS | 会话列表:新群出现,原单聊不变 | P1 |
| 10 | E_D1 | iOS | 陌生人 / 官方账号:没有成员行 | P1 |