我用 HarmonyOS 6.1实况窗Live View,重做了一次秒杀时钟

我用 HarmonyOS 6.1实况窗Live View,重做了一次秒杀时钟

一、先聊聊《完美桌面时钟》这个 App:它其实一开始并不复杂

一开始的想法其实挺简单的:

👉 就是想让手机,变成一个“好看的桌面时钟”

平时放在办公桌上、床头,用来看看时间,顺便让界面更有一点氛围感。

后来慢慢做着做着,就开始“加料”了:

  • 想要更多表盘(数字的、模拟的)
  • 想要自定义背景(渐变、动态、甚至自己上传)
  • 想要点氛围(白噪音搞起来)
  • 想顺手做个番茄钟(提高点效率)

再后来就变成现在这样:

一个不只是“看时间”,而是“帮你用时间”的 App

二、为什么要做秒杀:一个很真实的痛点

这个功能其实不是我拍脑袋想的,是我自己踩过坑。

比如:

  • 抢演唱会票
  • 抢限量商品
  • 电商大促秒杀

你会发现一件事:

👉 你会不停切 App 看时间

有时候甚至是:

  • 时钟 App
  • 秒杀 App
  • 再切回来
  • 再确认一遍

来回切,整个人是有点焦虑的。

那时候我就在想:

有没有一种方式,“别让我一直盯着时间”,而是它自己就出现在我面前?

三、这就是为什么我选了 HarmonyOS 的“实况窗”

HarmonyOS 6.1 里的“实况窗(Live View)”,一开始我理解它只是:

👉 “一个高级一点的通知”

但真正用下来之后发现,它更像是:

一个一直存在于系统里的“实时窗口”

它能做到:

  • 不用打开 App
  • 锁屏直接看到
  • 状态栏随时可见
  • 并且会持续更新

这些能力叠在一起之后,我基本确定了一件事:

✔ 秒杀计时这种“持续变化 + 高时效”的场景,天生就适合用实况窗来做

四、核心改造:把秒杀时钟“搬进系统”(不只是显示,而是重构体验)

一开始我做这个功能的时候,其实只是想:

👉 “在锁屏上显示一个倒计时”

但真正做完之后,我才意识到:

实况窗不是一个简单的展示组件,而是一个“系统级体验容器”

它改变的不是“你怎么看时间”,而是:

时间出现的方式

4.1 实况窗的本质(我自己的理解)

官方定义是:

👉 用来展示“持续变化、强时效”的信息

比如:

  • 倒计时
  • 外卖进度
  • 出行状态

这些信息有一个共同点:

它们不是“看一眼就结束”,而是一个持续发生的过程

而秒杀计时,刚好完全符合这个模型。


4.2 三种形态,本质是“三层信息密度”

实况窗表面上是三种 UI:

  • 胶囊态
  • 卡片态
  • 锁屏沉浸态

但在设计时,我把它理解成:

三种不同的信息密度层级

🟡 胶囊态:只给你最关键的一眼

  • 显示剩余时间
  • 每秒变化
  • 常驻状态栏
状态栏胶囊倒计时

👉 用户行为:扫一眼
👉 设计原则:越简单越好


🟢 卡片态:信息 + 操作

点击胶囊展开:

  • 剩余时间
  • 进度条
  • 控制按钮(暂停 / 结束)
实况窗卡片展开

👉 核心目标:少走一步,不用打开 App


🔵 锁屏沉浸态:真正的体验分水岭

这个是我这次做完之后,感触最深的一个点。

相比普通卡片:

  • 展示面积更大
  • 视觉优先级更高
  • 更接近系统界面本身
锁屏沉浸态倒计时

我在这里做了几个比较关键的调整:

  • 时间数字优先级最高(尽量大)
  • 尽量减少干扰元素
  • 让时间变化更“有节奏感”

最终带来的变化是:

用户不再只是“看时间”,而是在“感受时间在流动”

4.3 为什么实况窗特别适合秒杀

特性秒杀需求
持续变化✔ 倒计时
高时效✔ 秒级精度
不可错过✔ 强需求
低打扰✔ 不适合通知

👉 基本可以说是完全匹配。


五、技术实现

5.1 实况窗核心其实是“生命周期”

它不是一个 UI,而是一个完整过程:

  • 创建(开始计时)
  • 更新(时间变化)
  • 销毁(结束计时)

5.2 更新机制:为什么能做到实时

我的实现思路:

  • 本地时间作为基准
  • 状态驱动 UI 更新
  • 控制刷新频率

👉 目标就是两个字:

稳定 + 准确

5.3 沉浸态实现的关键点(容易被忽略)

沉浸态的本质是:

你的 UI 开始“占用系统空间”

所以需要注意:

  • 安全区域处理
  • 布局延伸
  • 不遮挡系统信息

这一点处理不好,体验会很奇怪。


5.4 UI设计:一定要克制

这个是我踩坑之后总结出来的:

一开始我做得很复杂:

  • 很多按钮
  • 很多信息

后来全部删掉。

👉 最终结论:

越关键的场景,越要简单

六、实况窗带来的变化(最真实的部分)

对比之前:

方式体验
打开App查看操作多、容易错过
通知提醒有打断感
实况窗持续可见、几乎无打扰

最终的变化其实很简单:

你不再需要“去看时间”,时间会一直在你眼前

七、一些经验总结(开发者视角,但基本都是踩坑换来的)

实况窗这个能力,如果只看文档,很容易觉得它就是“一个会自动更新的卡片”。

但真正做下来之后,我的感受更接近:

它是一个由系统托管,但必须被你严格控制的状态展示能力。

✔ 不是你想展示什么,而是系统允许展示什么

一开始我犯的一个错误是:

👉 想把很多信息都放进去

结果就是:信息很全,但完全不好用。

后来我才慢慢意识到:

实况窗不是用来“扩展页面”的,而是用来“筛选信息”的。

尤其是在锁屏沉浸态:

用户其实只会关注一件事:

👉 时间还剩多少

所以最后我做了一个很“狠”的取舍:

  • 只保留时间
  • 其他信息全部降级甚至删除

✔ 生命周期必须和业务状态完全一致

这个点真的踩过坑才会记住。

典型问题:

  • 倒计时结束了,但实况窗还在
  • App退出了,但状态没清
  • 多个实况窗叠加

这些问题本质只有一个:

状态不同步

后来我做了一个强约束:

  • 开始计时 → 创建
  • 计时中 → 更新
  • 结束 → 必须销毁
  • 异常 → 强制兜底

👉 实况窗不是“能显示就行”,而是:

必须在正确的时间,以正确的状态存在。

✔ 更新不是越频繁越好,而是越“稳定”越好

一开始我做的是:

👉 每秒刷新

但实际体验并没有更好,反而更“乱”。

后来我改成:

  • 用本地时间计算差值
  • 状态变化才触发更新
  • 控制刷新节奏

👉 一个很重要的体感是:

用户不需要看到“每一秒”,
只需要感知时间在变化

✔ 三种形态,本质是用户注意力的变化

实况窗的三种形态:

  • 胶囊态
  • 卡片态
  • 沉浸态

一开始我当成三套 UI 来做,后来发现不对。

更合理的理解是:

同一份信息,在不同注意力状态下的表达方式
  • 胶囊态 → 扫一眼
  • 卡片态 → 主动查看
  • 沉浸态 → 停留感知

👉 设计的关键不是做三套界面,而是:

在不同场景下,让信息“刚刚好”地出现。

✔ 沉浸态的关键不是“更大”,而是“更干净”

沉浸态最容易做错的一点是:

👉 面积大了,就想多放内容

但实际正确方向是:

面积越大,越要克制

我最后的做法是:

  • 放大时间
  • 去掉装饰
  • 降低干扰

反而更有“沉浸感”。


✔ 最后一个很重要的认知

实况窗不是用来替代 App 的。

它更适合:

  • 持续变化的信息
  • 强时效场景
  • 用户不希望被打断的场景

如果用一句话总结我现在的理解:

它不是让你多一个展示入口,而是让“最重要的信息,一直存在”。

八、一些更偏个人的总结(写完这个功能之后的真实感受)

这次把秒杀时钟用实况窗重做了一遍之后,我最大的变化,其实不是“功能变多了”。

而是对一件事有了新的理解:

App 不一定非要等用户打开,才开始提供价值。

以前做功能的思路是:

  • 用户打开 App
  • 找到功能
  • 获取信息

现在反过来了:

  • 信息直接出现在系统里
  • 用户不需要额外操作
  • 甚至不用“想起来去看”

这种感觉其实挺微妙的。

你会发现,用户不再是在“使用功能”,而是在一个更自然的状态下“接收信息”。


另外一个比较直观的变化是:

以前做 UI,总想着“怎么把界面做得更丰富”。

现在反而会多想一步:

用户在这个时刻,真的需要看到这么多东西吗?

很多时候答案是:不需要。


最后,如果一定要用一句比较朴素的话来总结这次实践:

好的体验,不是让用户多做一步,而是少想一步。


更多HarmonyOS相关资讯活动,欢迎关注中小企业IT网-HarmonyOS开发者社区【中小企业IT网】数字化转型 | 中小企业IT采购首选平台

编辑于 2026-05-28 · 著作权归作者所有