日期:2026-06-27
状态:8.1.7 已确认方案,进入实现与 QA 回归
目标分支:codex/appgrid-usage-tips
目标范围:免费版 + Pro 主题体验
最低系统:macOS 14.0
MM:SS,不显示额外“体验中”字样。ProThemePreviewState.endsAt 推导真实剩余时间。pro.theme.status.previewCountdown,统一保留 %time% 占位符。本增补是 8.1.7 的新实验需求。它建立在 8.1.6 的 Pro 主题体验倒计时之上,不改变倒计时、购买、恢复购买、旧付费用户自动获得 Pro、免费预览不写入真实设置等既有口径。
深蓝 -> 暗色炫彩炫彩 -> 亮色炫彩暗色炫彩 或 亮色炫彩 时显示。暗色炫彩 的滑轨只能在暗色可读范围内变化:无论拖到哪里,整体仍是深色背景,容器标题、标签、按钮和图标都保持足够对比。亮色炫彩 的滑轨只能在亮色可读范围内变化:无论拖到哪里,整体仍是明亮、干净、年轻的背景,不退化成暗黑主题。暗色炫彩:深色基底 + 多色液体流动感。它不是纯深蓝,也不是单一紫蓝渐变;应有高级、冷静、现代的色彩层次。暗色炫彩 默认初始视觉采用方案 1「极夜孔雀」:深青黑底,孔雀蓝与冷翠绿液体光带。滑轨初始位置应对应这套初始状态。亮色炫彩:明亮基底 + 多色液体流动感。它服务年轻、轻快、漂亮的审美,不应变成暗黑或低饱和灰脏效果。暗色炫彩 和 亮色炫彩 固定放在最下方最后一排:左侧为 暗色炫彩,右侧为 亮色炫彩。这两个可调主题在视觉上形成对称分组,下方整行滑轨自然归属于这一组。iconSize 偏好的新用户,默认图标大小改为 56。PTC-16:主题页中 深蓝 已显示为 暗色炫彩,炫彩 已显示为 亮色炫彩,29 种语言都不存在旧显示名遗漏。PTC-17:暗色炫彩 和 亮色炫彩 都按 Pro 主题处理,免费用户仍走 8.1.6 的预览倒计时。PTC-18:只有选中两个炫彩主题时才显示调色滑轨;其它主题不显示且不占位。PTC-18a:主题网格最后一排固定为左 暗色炫彩、右 亮色炫彩,其它主题不会插入这两个卡片之间。PTC-19:暗色炫彩 滑轨任何位置都保持暗色风格和足够文字对比。PTC-20:亮色炫彩 滑轨任何位置都保持亮色风格和足够文字对比。PTC-21:免费预览期间调色不写入真实主题设置;预览结束或切回免费主题后不残留脏数据。PTC-22:Pro 用户调色后可持久化,重启 App 后仍保持所选主题和滑轨状态。PTC-23:macOS 14 下主题页布局不裁切、不出现底部贴边、不因长语言挤压滑轨。PTC-24:已有保存为旧 深蓝 / 炫彩 的用户偏好仍能映射到新显示名和新视觉,不出现空主题或回退默认。PTC-25:新安装默认 iconSize=56;已有 iconSize 的用户不被覆盖。PTC-26:亮色炫彩 的默认滑轨位置为最左端;新用户、首次切到该主题、未保存过调色偏好的用户都从最左端初始视觉开始。为 Pro 主题的免费体验状态增加可见倒计时。
当前免费用户可以点击 Pro 专属主题并临时体验该主题。这个体验有时间限制,但界面没有清楚告诉用户还剩多久。体验结束后,App Grid 会回到用户真实可用的主题;如果用户不知道这是限时体验,很容易误以为主题保存失败、设置丢失,或者 Pro 权益逻辑不稳定。
本需求要求在现有主题页界面中增加一个轻量倒计时。倒计时必须以当前真实体验时长为准。当前已核实的代码基线是:每次 Pro 主题体验 5 分钟。如果后续产品决定调整体验时长,倒计时必须自动反映真实剩余时间,不允许在文案里写死“5 分钟”。
当前产品行为如下:
给研发定位用的当前代码事实:
5 * 60。当前界面只告诉用户“正在体验 Pro 主题”,但没有告诉用户体验会持续多久、何时结束。
这会带来三个用户可感知问题:
免费用户应该明确知道:
产品应做到:
本需求不包含:
如果产品决定调整体验时长,应作为独立产品决策处理。本 PRD 只要求倒计时反映真实配置的体验剩余时间。
当免费用户正在体验 Pro 主题时,现有主题页 Pro 状态行必须显示剩余时间。
推荐中文显示:
体验中 · 剩余 04:59
推荐英文显示:
Previewing · 04:59 left
状态行仍应保留 Pro 价值提示,但倒计时必须直接可见,不能依赖 hover、tooltip 或二级面板。
可接受的紧凑中文备选:
Pro 主题体验中 · 04:59
剩余 04:59 · 解锁 Pro 后可永久保留
正在体验的 Pro 主题卡片,必须在现有 accessory 区域显示紧凑时间提示。
优先显示:
04:59
如果空间允许,可显示:
体验中 04:59
倒计时只作用于当前正在体验的 Pro 主题卡片。其它锁定的 Pro 主题继续显示普通 Pro 标识。
倒计时格式必须稳定、易扫读:
MM:SS。05:00、04:59、01:05、00:09。00:00。以当前 5 分钟基线看,MM:SS 足够。如果未来产品把体验时长提高到 59 分钟以上,需另行决定是否改用小时格式。
免费用户点击 Pro 主题时:
当前基线下,初始可见值应接近 05:00。
免费用户已经在体验 Pro 主题 A,此时点击 Pro 主题 B:
界面上不能同时出现两个主题卡片倒计时。
免费用户体验 Pro 主题时选择免费主题:
不需要警告弹窗。
倒计时结束时:
推荐轻量反馈:
主题体验已结束
如果产品内已有轻量 inline 或 toast 反馈模式,可以复用。不要为到期新增阻塞弹窗。
用户在体验 Pro 主题时购买或恢复 Pro 成功:
用户不应在成功解锁后丢失正在体验的主题。
倒计时应表示真实剩余时间,而不是界面可见时间。
用户可感知行为要求:
本功能归属:
设置
└── 主题
├── Pro 状态行
│ └── 体验倒计时
└── 主题网格
└── 当前 Pro 体验主题卡片倒计时
这是 Pro 主题体验的子行为,不是新的设置分区,也不是新的 Pro 管理页。
体验中 · 剩余 05:00。05:00。需要覆盖以下含义:
| 含义 | 中文草案 | 英文草案 |
|---|---|---|
| 带剩余时间的体验状态 | 体验中 · 剩余 %@ |
Previewing · %@ left |
| 卡片紧凑计时 | %@ |
%@ |
| 体验结束反馈 | 主题体验已结束 |
Theme preview ended |
| 解锁后保留提示 | 解锁 Pro 后可永久保留 |
Unlock Pro to keep it |
说明:
%@ 表示格式化后的剩余时间,例如 04:59。PTC-01:免费用户点击任一 Pro 专属主题后,开始体验,并在主题页状态行看到倒计时。
PTC-02:免费用户正在体验的 Pro 主题卡片,在 accessory 区域显示紧凑倒计时。
PTC-03:倒计时以 MM:SS 显示真实剩余时间,且不会显示负数。
PTC-04:倒计时必须读取真实配置体验时长,不允许把界面文案写死为“5 分钟”或任何固定时长。
PTC-05:体验中从一个 Pro 主题切换到另一个 Pro 主题时,新主题重新开始倒计时,旧主题移除倒计时。
PTC-06:体验中选择免费主题时,立即结束体验、隐藏倒计时,并保存该免费主题。
PTC-07:体验时间到期后,界面退出体验状态、隐藏倒计时,并恢复用户真实可用主题;不得弹出阻塞弹窗。
PTC-08:体验中解锁 Pro 成功后,当前体验主题成为真实保存主题,倒计时消失。
PTC-09:体验中关闭并重新打开设置页,如果体验尚未到期,应显示真实剩余时间。
PTC-10:体验在设置页关闭期间到期后,重新打开设置页不得显示过期倒计时。
PTC-11:Pro 用户和 legacy Pro 用户不显示 Pro 主题倒计时,按普通已解锁主题行为展示。
PTC-12:所有支持语言都必须补齐倒计时和体验结束文案,不得出现占位符泄漏或混合语言兜底。
PTC-13:倒计时每秒变化时,不得造成主题卡片宽高跳动或主题网格布局抖动。
PTC-14:倒计时在浅色和深色系统外观下都必须清晰可读。
PTC-15:QA 可以通过现有缩短体验时长的 QA 路径验证倒计时到期行为。
必须覆盖以下场景:
推荐 QA 加速方式:
中文:
Pro 主题体验现在会显示剩余时间,体验结束前后状态更清楚。
英文:
Pro theme previews now show remaining time, making temporary previews easier to understand.
OD-01:生产体验时长保持当前 5 分钟,还是作为独立产品决策改为其它时长。
OD-02:体验结束时只通过状态行恢复表达,还是额外复用现有轻量 toast。
OD-03:主题卡片 accessory 最终采用纯时间 04:59,还是在空间允许时采用 体验中 04:59。