LaunchOS V2:我们为什么决定推倒重来

2026年5月13日

去年 9 月 30,我们发布了 LaunchOS 第一个公开测试版,10 月 31 日,发布了 LaunchOS v1.0 正式版。

到现在,它已经经历了 26 个公开版本。从功能层面我们一点点补齐了触发角、触控板手势、键盘操作等,体验上则反复打磨和优化交互手感与动画;外观上对液态玻璃做了一层层融合适配,以及很多用户反馈提到的细节,很多很多细节是我们从未发现的:原来还可以这样?原来有人在这么使用!可以说,是用户的反馈共创造就了它。

很幸运,v1 得到了非常多用户的认可。
有不少人说,它是目前他们用过的体验最好的启动台替代品,尤其是在细节打磨与设计上的思考。

这些反馈直接戳中了我们的内心,对我们来说是巨大的鼓励。

但也正因为我们一直在认真打磨它,我们团队内部也意识到了 V1 的一些问题:如果 LaunchOS 想继续往前走,造就了它的 SwiftUI 可能反而也会成为一道枷锁。

shot2

我们正在触摸 LaunchOS V1 的天花板

LaunchOS 作为一款应用启动器,最难的地方并不是「把应用图标列出来」,而是要把一整套启动台体验做得足够流畅、舒适、自然:

  • 页面拖拽/触控板滑动的跟手性;
  • 分页动画的顺滑流畅性;
  • 所有与人产生交互的环节的过渡自然性;
  • 键盘、鼠标、触控板等对各类不同硬件设备以及鼠标优化软件的兼容性;
  • 不同尺寸和分辨率屏幕以及网格数量下的动态适配兼容性;
  • 从 Intel、M1 到 M4 不同芯片类型上表现的稳定性;
  • 内存、CPU、GPU 占用的稳定控制。
  • 等等

这些东西看起来都很小,但只要其中一个地方不对,用户立刻就会觉得「不像原来的启动台」。

v1 里,我们做了很多轮优化。
有些优化甚至只是为了让一个很小的交互少掉一点卡顿,或者让某个动画在某类设备上表现稳定。

但到了后期,我们经常遇到同一个问题:

开发一个功能本身并不难,难的是让它在少数老旧设备上也足够流畅、足够稳定。

有时候,一个功能可能一天就能写完,但为了把性能和内存表现压到极致,我们要再花好几天反复调整。导致我们在功能层面的迭代上速度逐步放缓,导致用户看到的更新日志新功能里只有短短一行「新语言支持+性能优化」。

这不是一个健康的状态。

技术重构,不破不立:重写视图和交互层

SwiftUI 是苹果正在主推的 UI 框架,对开发者非常友好,写起来真的很爽,它非常适合快速搭建界面、做状态驱动的 UI,也让很多原本复杂的 macOS 开发变得简单。

但 LaunchOS 的核心界面有点特殊。

它不是一个普通的设置页,也不是一个信息流列表,而是一个需要大量高频动画、拖拽、命中检测、窗口层级、视觉效果和输入事件协同工作的系统级工具。

在这类场景里,如果我们继续主要依赖 SwiftUI 的声明式视图层和系统封装,就会遇到越来越多难以绕开的限制:

  • 某些动画节奏不够可控;
  • 优秀的封装在某些场景下会显得臃肿,导致额外的性能消耗;
  • 高频状态变化也会带来额外开销;
  • 内存和视图生命周期不总是符合我们的预期;
  • 一些系统级交互最终还是要回到 AppKit 才能更稳定地处理。

所以 V2 的方向是把启动台的核心体验下沉到更底层、更可控的 AppKit 实现里。

这意味着我们要自己管理更多细节,也意味着我们可以少一些妥协。

LaunchOS Settings General

推倒重来的工作量远远远超预期

重构听起来很爽,但实际做起来并不浪漫。

在 SwiftUI 里几行代码可以完成的动画,到了 AppKit 里可能要自己拆成几十行逻辑:什么时候开始、什么时候结束、中间状态怎么插值、用户打断动画时怎么接住、拖拽过程中怎么避免布局抖动… 全部需要自己处理。

还有一些问题更麻烦:

很多新的系统视觉效果和接口,是优先给 SwiftUI 使用的。
到了 AppKit 里,并不是所有东西都有同等开放的 API。有些地方需要绕一圈,有些地方需要重新设计实现方式,还有些地方只能在「尽量接近」和「稳定可控」之间做取舍。

这也是为什么我们没有把 V2 做成一次简单的「代码整理」。

它更像是一次重新理解 LaunchOS 的过程:

  • 哪些交互必须 100% 还原;
  • 哪些细节可以重新实现得更稳定;
  • 哪些 v1的历史包袱应该趁这次移除;
  • 哪些用户反馈应该变成底层能力,而不是补丁式功能。

LaunchOS Menu

V2 想解决什么

V2 最核心的目标只有一个:

让 LaunchOS 更流畅、更轻、更接近系统级体验,为今后的功能迭代提供更稳健的地基。

具体来说:

  • 即使是在 120hz 甚至 240hz 的高刷新率屏幕上,也可以在不额外开销的情况下获得稳定流畅的动画帧率;
  • 更低的运行开销,减少不必要的视图更新和内存占用;
  • 更流畅的体验,之前因为不希望增加开销未做的逻辑处理,可以尽情发挥;
  • 更自然的窗口和视觉效果,让它和 macOS 26 的系统语言融合得更好;
  • 更清晰的底层结构,方便后续继续迭代,而不是每做一步都被旧结构牵制。

这次重构也补齐了一些更原生的体验:

比如,拖拽应用到 Dock。
这件事 V1 也不是做不到,只是我们希望可以在 V2 上直接落地,避免同时维护两套逻辑。

比如,基于液态玻璃效果重新设计文件夹背景托盘。
v1 已经尽可能接近 macOS 26 的视觉语言,但 V2 会进一步把这个体验做得更像系统的一部分,而不是一个覆盖在系统之上的窗口。

再比如,适配 120Hz 甚至更高刷新率设备。
这件事 V1 也不是做不到,但是会导致额外的开销。

LaunchOS v2 Folder

当前测试版已经开放,但它还不是最终状态

LaunchOS V2 的测试版已经在 2026 年 5 月 12 日开放。

因为这是一次底层重构,所以它一定会有一些测试还没覆盖到的问题。我们自己能覆盖一部分设备、一部分系统版本、一部分使用习惯,但不可能覆盖真实用户环境里的所有组合。

这也是为什么我们希望愿意尝鲜的用户继续给我们反馈。
如果它出现了卡顿、闪退或者任何你觉得不舒服或者不对劲的地方,欢迎告诉我们,你的设备可能是非常珍贵的病况案例等待我们去攻克。

反馈入口:

应用设置 - 关于 - 反馈

正式版发布时,我们也会从这些对我们有帮助的反馈里抽取一部分用户,赠送【双设备许可证】。

我们不一定能回复每一条反馈,但每一条都会看,也会做分类。过去几个月,LaunchOS 的很多改进都来自这些看起来很普通、但非常具体的反馈。

如果你还怀念 Launchpad,你永远可以相信 LaunchOS

即使在 v1阶段,我仍然真心认为 LaunchOS 已经是目前体验最好的 Launchpad 替代方案之一。

如果你不习惯新的聚焦(Apps),或者你依然怀念原来的 Launchpad,LaunchOS 可能就是你在找的。

如果你不知道它和你当前正在用的某产品有何区别,下载体验一下,我相信你会快速找到答案。

V2 不是为了把它变成一个更复杂的启动器。
相反,我们希望通过这次重构,让它回到更简单、更稳定、更接近原生的状态。

很多时候,做一个工具最难的地方不是加功能,而是克制地把每一次打开、每一次拖拽、每一次翻页都做顺。

期待你的反馈~

官网:

https://launchosapp.com/launchpad-alternative/