在 v9.5 的发布说明中,我们提到 XML 引擎将移出主仓库,并表示会另发一篇文章来解释 这个决定。那篇文章拖得太久了。与此同时,各种疑问不断累积,其中包括 issue #9663——在那里,你们中的一些人提出了 合理的质疑,却没有得到我们真正的回应。这是我们的失误。所以,现在就把话说清楚: 什么变了、我们为什么这么做、它对你的项目意味着什么,以及 LVGL Open 和 LVGL Pro 之间的界线究竟 划在哪里。
太长不看(TL;DR)#
- LVGL 库始终保持 MIT 授权。就这么简单。 控件、布局、样式、驱动、字体:
lvgl/lvgl仓库中的一切都是开源的、可免费用于商业 用途,并将一直如此。 - XML 引擎现在是 LVGL Pro 的一部分。 它在 v9.5 中离开了核心仓库,采用自定义的 LVGL 授权,而非 MIT。编辑器在内部使用它(这一点即使在免费层级也已涵盖)。
- 在你的设备上于运行时加载 XML 需要付费授权。我会在下文解释原因。
- 你永远不会被锁定。 编辑器导出的纯 C 代码仅依赖于 MIT 授权的 LVGL。无论 Pro 将来如何发展,你始终拥有一条完全开源的产品交付路径。
- 编辑器对社区免费。 个人、教育和开源项目可以免费获得完整的编辑器,而且这条 界线的移动对你是有利的。
- 9.4 及以下版本将永远保留其 MIT 授权的 XML 引擎。 MIT 无法撤销,我们也不会去 尝试。
LVGL 生态系统概览#
为了更好地理解全貌,我们先来看看现在的 LVGL 生态系统是什么样子。
我们维护三款产品,它们是这样组合在一起的:
- LVGL 库:控件、样式、布局、动画、绘图引擎、驱动等
- C 语言库,可集成到任何 MCU 或 MPU 中
- 在 GitHub 上提供
- MIT 授权,意味着即使商业使用也免费
- LVGL Pro 编辑器导出的是 LVGL Open 代码
- 同样是用 C 编写的 UI 库
- 不是 LVGL Open 的分支,而是从零开始编写
- 面向安全关键型产品的可认证运行时
- 功能比 LVGL Open 少,但可靠性极高
- 目标发布日期为 2026 年第四季度
- 也将集成到 LVGL Pro 中
- LVGL 官方的 UI 工具套件,包含编辑器、在线查看器、Figma 插件和 CLI
- 编辑器:XML 编辑、可视化设计、Figma 同步、实时预览、协作
- XML 引擎:由编辑器在内部使用
- 设备端运行时 XML 加载是一项单独授权的功能(该功能没有免费层级)
- 提供带 SLA 的商业支持
- 商业使用付费,非商业使用和评估免费
v9.5 中究竟改变了什么?#
有两件事:
- XML 引擎(
lv_xml_*)移出了lvgl/lvgl仓库。 - 它的授权变了。今后,XML 引擎将作为 LVGL Pro 工具链的一部分,在自定义的 LVGL 授权下开发。它不再是开源的。
如果你不使用 XML,对你来说什么都没变。如果你使用编辑器并导出 C 代码,对你来说 也什么都没变,因为生成的代码仅依赖于 MIT 授权的库。如果你在运行时加载 XML, 下面这一节就是为你准备的。
我们为什么这么做?#
有两个原因,一个是技术层面的,另一个关乎 LVGL 作为一个项目如何存续。
技术原因: XML 引擎与编辑器同步演进。编辑器的每一项功能(数据绑定、动画、 测试、翻译)都需要引擎提供相应的支持,而且往往要在几天之内跟上。核心库每年发布 两到三个版本,每个版本支持大约一年,因为数以百万计的设备依赖它的稳定性。把引擎 留在核心库里,要么意味着让编辑器的功能受制于核心库的发布周期,要么就是用快速 变动的代码破坏核心库的稳定。
商业原因: LVGL Open 是免费的,但维护它的人并非如此。编辑器和 XML 工具链正是 我们为开源库、驱动、文档以及你在 GitHub 和论坛上获得的支持提供全职投入的资金 来源。一个 MIT 授权的 XML 引擎将意味着任何公司都可以拿走这套格式和运行时,在 我们的成果之上构建一个与之竞争的商业编辑器,却不为你免费使用的这个库回馈任何 东西。将 XML 引擎置于 LVGL 授权之下,保护的正是让 LVGL Open 得以存续和持续 前进的资金模式。
好消息是,正因为有商业授权来支付开销,我们才能向社区免费提供完整的编辑器。 个人、教育和开源项目无需付费,没有水印,也没有人为的限制。
如果你使用 lv_xml,这意味着什么?#
在 v9.4 或更早版本上: 什么都不会变。这些版本中的 XML 引擎以 MIT 授权发布, 而 MIT 是不可撤销的。你可以继续在 LVGL v9.4 中使用它,它也会按照我们通常的支持 周期继续获得支持。
在 v9.5 及以后版本上,有两种截然不同的情况:
- 在编辑器内部,你完全不用去想引擎的事。 编辑器在内部使用 XML 引擎来实现实时 预览、在线查看器和测试。只要使用编辑器(包括免费的 Community 层级),这就已经 涵盖了。
- 在你的设备上,运行时 XML 加载是一项需要授权的功能。 如果你的产品在运行时 加载 XML(用于 OTA UI 更新、可下载的主题或表盘、服务器驱动的屏幕),你就需要 为 XML 引擎申请一份运行时授权。设备端使用没有免费层级。授权持有者可以获得预编译 库或源代码。要为你的设备申请运行时 XML 授权,或者只是想聊聊你是否真的需要它, 请发邮件给我们:lvgl@lvgl.io。
C 代码导出涵盖同样的 UI 定义,生成纯 MIT 授权、对 XML 引擎零依赖的代码,也是 我们默认推荐的路径。运行时 XML 是一项面向高级需求的能力,适用于那些 UI 必须 在发布之后仍能改变的产品,而这份授权正是为它们准备的。
谢谢你们,也请继续提问
LVGL 之所以存在,是因为你们中成千上万的人用它来构建产品、报告问题,并在觉得哪里不对劲时提出质疑。如果这篇文章还留下了什么疑问,请告诉我们。
每一封邮件我们都会亲自回复。


