当前位置: 欣欣网 > 码农

Electron 29.0.0 正式发布,跨平台桌面应用开发工具!

2024-02-21码农

2 月 20 日,Electron 29.0.0 正式发布!该版本包括了对 Chrome 122.0.6261.39、V8 12.2 和 Node.js 20.9.0 的升级。下面就来看看该版本都有哪些更新吧!

可以通过以下命令来安装最新版本:

npminstall electron@latest

依赖更新

  • Chrome 122.0.6261.39

  • V8 12.2

  • Node.js 20.9.0

  • 重大变化

  • 通过 contextBridge 调用的函数现在使用预期的接收者( this )来调用(也适用于 27、28 版本)。

  • 应用上的 gpu-process-crashed 事件已被弃用(也适用于 28 版本)。

  • 应用上已弃用的 gpu-process-crashed 事件已被移除。

  • 应用上的已弃用的 renderer-process-crashed 事件以及 WebContents <webview> 上的 crashed 事件已被移除。

  • 新特性

    新增功能

  • 添加了 WebContentsView BaseWindow ,取代了现已弃用的 BrowserView API。

  • ses.setPermissionRequestHandler(handler) 中添加了 keyboardLock (也适用于版本 26、27、28)。

  • protocol.registerSchemesAsPrivileged 中添加了一个选项,允许在自定义方案中缓存 V8 代码(也适用于版本 27、28)。

  • 在实用程序中添加了 net 模块(也适用于版本 27、28)。

  • 添加了新的 Electron Fuse,将 file:// 协议选择为与 Chromium 匹配的更安全、更严格的行为。

  • 添加了新的 webUtils.getPathForFile 方法,以替代 File.path 的增强功能。

  • 添加了通过 .npmrc 配置 use_remote_checksums 的支持。

  • app.{set|get}LoginItemSettings(settings) 迁移到 macOS 上的 Apple 推荐的新底层框架。

  • 此 PR 向 display 对象添加了几个属性,包括 detected maximumCursorSize nativeOrigin (也适用于版本 28)。

  • 弃用功能

  • 从 Windows zip 文件中移除了多余的 dll 文件(也适用于版本 28)。

  • 问题修复

  • 添加了 ThumbnailCapturerMac ScreenCaptureKitStreamPickerSonoma 这两个 Chromium 特性标志的支持,以在 macOS 14.4 上绕过弃用 API 的警告。

  • 修复了 Electron 29.0.0-beta.3 中的一个回归问题,该问题可能导致上下文菜单在错误的位置弹出。

  • 修复了在启用 contextIsolation 的渲染进程中 import.meta.url 不工作的问题。

  • 修复了原始 original-fs 方法在已修补的导入中未正确修正的问题。

  • 修复了跨平台时 draggable 区域不起作用的问题。

  • 修复了 MessagePort::close 中的崩溃问题。

  • 修复了 GrantFileProtocolExtraPrivileges 未正确阻止对 file:// URLs 的 fetch() 调用的问题。

  • 注意事项

    根据项目的支持政策,Electron 26.x.y 已经达到了支持结束的状态,鼓励开发者和应用升级到更新的 Electron 版本。

    往期推荐