跳转到主要内容

Electron 16.0.0

·阅读时长 4 分钟

Electron 16.0.0 已发布!它包含了 Chromium 96、V8 9.6 和 Node.js 16.9.1 的升级。请继续阅读以了解更多详情!


Electron 团队很高兴地宣布 Electron 16.0.0 版本发布!您可以通过 npm 使用 npm install electron@latest 安装它,或从我们的 发布网站 下载。请继续阅读以了解此版本的详细信息,并分享您的反馈!

Electron 发布节奏变更

从 Electron 15 开始,Electron 将每 8 周发布一个新的主要稳定版本。您可以在 此处 阅读完整的详细信息。

此外,Electron 已将支持的版本从最新三个版本更改为最新四个版本,直至 2022 年 5 月。 请参阅我们的版本控制文档,以获取有关 Electron 中版本控制的更详细信息。2022 年 5 月之后,我们将恢复支持最新三个版本。

值得注意的变化

  • 现在支持 WebHID API。 #30213
  • app.requestSingleInstanceLock 添加 data 参数,以便在实例之间共享数据。 #30891
  • 将 securityOrigin 传递给媒体权限请求处理程序。 #31357
  • 添加 commandLine.removeSwitch#30933

请参阅 16.0.0 版本说明,以获取完整的特性和变更列表。

堆栈变化

破坏性变更

以下是 Electron 16 中引入的破坏性变更。有关这些变更以及未来变更的更多信息,请参阅 计划中的破坏性变更 页面。

构建原生模块

如果您的项目使用 node-gyp 构建原生模块,则根据您的项目设置和 Electron 版本,您可能需要使用 --force-process-config 调用它。有关此变更的更多信息,请参阅 #2497

行为变更:crashReporter 实现已切换到 Linux 上的 Crashpad

Linux 上 crashReporter API 的底层实现已从 Breakpad 切换到 Crashpad,使其与 Windows 和 Mac 一致。因此,子进程现在会自动被监视,并且不再需要在 Node 子进程中调用 process.crashReporter.start(也不建议这样做,因为它会启动第二个 Crashpad 报告器实例)。

在 Linux 上,注释的报告方式也发生了一些细微变化,包括长值将不再被拆分到以 __1__2 等结尾的注释之间,而是会被截断到(新的、更长的)注释值限制。

API 变更

Electron 16 中没有 API 更改。

移除/弃用变更

  • 在渲染器中使用 desktopCapturer.getSources API 已被弃用,并将被移除。此变更提高了 Electron 应用程序的默认安全性。有关如何替换应用程序中此 API 的详细信息,请参阅 此处

12.x.y 版本支持结束

根据项目的 支持策略,Electron 12.x.y 已达到支持结束。鼓励开发者和应用程序升级到较新版本的 Electron。

从 Electron 15 开始,我们将支持的版本从最新三个版本更改为最新四个版本,直至 Electron 19。Electron 19 之后,我们将恢复支持最新三个版本。此版本支持变更是我们新的节奏变更的一部分。请参阅 我们的博客文章,以获取完整的详细信息。

E15 (21年9月)E16 (21年11月)E17 (22年2月)E18 (22年3月)E19 (22年5月)
15.x.y16.x.y17.x.y18.x.y19.x.y
14.x.y15.x.y16.x.y17.x.y18.x.y
13.x.y14.x.y15.x.y16.x.y17.x.y
12.x.y13.x.y14.x.y15.x.y--

接下来是什么

短期内,您可以期待团队继续专注于跟上构成 Electron 的主要组件(包括 Chromium、Node 和 V8)的开发。 尽管我们谨慎地不承诺发布日期,但我们的计划是大约每 2 个月发布包含这些组件新版本的新 Electron 主要版本。

您可以在 此处 找到 Electron 的公共时间线。

有关未来变更的更多信息,请参见 计划中的破坏性变更 页面。