当前位置:

首页 > 硬件相关 > Electron 40.0.0 发布,跨平台桌面应用开发工具

Electron 40.0.0 发布,跨平台桌面应用开发工具

Electron40.0.0发布,底层组件升级至Chromium144、Node.jsv24.11.1与V814.4。渲染进程剪贴板API弃用,调试符号文件改为tar.xz。新增子进程内存驱逐原因描述、scRGBHDR支持、硬件加速查询、自定义协议绕过配置等。修复Cookie加密、窗口锯齿、缩放错位等多项问题。

本文目录

    Electron 是什么?简单来说,它是一套让你能用 Ja vaScript、HTML 和 CSS 去构建跨平台桌面应用的框架。它巧妙地融合了 Node.js 的后端能力和 Chromium 的前端渲染,像 Atom 编辑器这类工具就是它的代表作。最关键的是,你只需要写一套代码,就能覆盖 macOS、Windows 和 Linux 三个主流平台。

    现在,Electron v40.0.0 正式发布了。这次更新干货不少,涵盖了底层组件升级、功能增强和一堆问题修复,下面来逐项看看。

    技术栈全面升级

    这次的底座换得挺彻底:

    • Chromium 内核升级到了 144.0.7559.60,顺带也回顾了一下 143 版本的新特性概况。
    • Node.js 也一并升级到了 v24.11.1。
    • 底层的 V8 引擎则更新到了 14.4 版本。

    值得注意的不兼容变更

    有几个地方需要开发者们特别留神:

    • 渲染进程里直接访问剪贴板 API 的方式,已经被标记为弃用了(详情见 #48923)。如果正在用,建议尽快迁移。
    • 另外,调试符号文件的上传逻辑做了调整:之前用的 dsym.zip 格式,现在换成了 tar.xz 压缩包(#48952)。如果你有自动化构建流程,记得更新相关配置。

    新增功能亮点

    这次新加的功能挺丰富,挑几个重点说一下:

    • 子进程异常退出时,现在多了一个可能的原因描述:"memory-eviction"(#48362)。这对排查内存相关错误很有帮助。
    • 离屏渲染方面,新增了对 scRGB HDR 色彩空间的支持,并且引入了 RGBAF16 输出格式(#48265)。这意味着在高动态范围显示场景下,Electron 应用能呈现更真实的色彩。
    • 新增了 app.isHardwareAccelerationEnabled() 接口(#47614)。这是一个很贴心的补充,让开发者能搞清楚硬件加速到底有没有生效,而不再全靠猜。
    • 网络请求层面,net.request 新增了 bypassCustomProtocolHandlers 配置项(#48883)。当你想绕过自定义的协议处理器时,这就派上用场了。
    • 辅助功能(Accessibility)的控制机制变得更精细(#48042),能让无障碍支持做得更到位。
    • WebSocket 连接现在可以通过 webContents 的 login 事件来支持身份验证了(#49064)。
    • 外部共享纹理现在可以被导入并转换成 VideoFrame 对象(#48831)。这对于视频处理或高性能渲染场景来说是个实用增强。
    • Linux 平台正式得到了 systemPreferences.getAccentColor() 方法(#48027),可以获取系统当前的强调色。
    • 文件系统 API 的授权状态现在可以在指定会话(session)中持久化保存了(#48170)。
    • 开发者工具在触发“检查元素”或断点调试时,会自动获得焦点(#4638),工作流会顺畅很多。

    优化与改进

    • 强调色的重置逻辑做了优化。以前如果调用过 window.setAccentColor(null),系统颜色可能不会正确恢复;现在已能正确响应系统级的设置了(#48274)。
    • 在非上下文隔离(non-context-isolated)的预加载脚本中,现在支持动态导入 ESM 模块(#48375)。这对模块化开发更友好了。
    • nativeImage.createFromNamedImage 方法现在已经兼容 SF Symbols 名称的调用(#48772)。如果你在 macOS 上开发,这个更新会很顺手。

    问题修复清单

    这次修复的问题也很有针对性:

    • Windows 平台新增了 --no-stdio-init 启动参数,用于禁用空设备初始化(#47870)。
    • 修复了 Windows/Linux 下,启用 Cookie 加密时,加密密钥提供程序未能正确传递到网络服务的问题(#49375, #49350)。
    • 修复了进程退出阶段,因模块解析引发的一个崩溃问题(#49104)。
    • 修复了子窗口拖拽区域识别异常的问题(#49312)。
    • 修复了圆角窗口在渲染时边缘出现锯齿的问题(#48782)。
    • Cookie 加密逻辑做了重构,回退采用了 M142 中已验证稳定的 os_crypt 同步实现(#49384)。
    • 修复了 Windows 平台窗口在缩放过程中间出现的视觉错位问题(#49191)。
    本站声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系bd@zhengruan.com
    作者最新文章
    硬件相关 桌面应用
    相关文章 更多
    CMake创建MFC桌面应用的实现
    CMake创建MFC桌面应用的实现

    使用CMake构建MFC桌面应用需安装VS生成工具并勾选C++桌面开发及MFC组件。核心文件为CMakeLists.txt(设置CMAKE_MFC_FLAG=2使用共享MFC库)、mfc.h和mfc.cpp,入口点wWinMainCRTStartup,可生成基础MFC窗口程序。

    php使用PHP-GTK和PHP Desktop开发跨平台的桌面应用程序
    php使用PHP-GTK和PHP Desktop开发跨平台的桌面应用程序

    PHP与桌面应用开发:跨界之旅 说起PHP,大多数人会立刻想到它在Web开发领域的赫赫威名。但跳出浏览器,这门语言其实还有更广阔的天地——比如,在你的桌面上跑起来。是的,你没听错,PHP完全有能力开发出功能完整的桌面软件。这听起来或许有些出人意料,但事实是,只要选对工具和路径,这个目标触手可及。 当

    Golang开发桌面应用的利与弊
    Golang开发桌面应用的利与弊

    跨平台桌面开发中使用Go语言的优势包括:跨平台性、高效性、并发性、强大的标准库,缺点为:GUI限制、原生IDE支持较弱、资源消耗较高。如考虑开发跨平台文本编辑器,可以使用Go标准库处理文件I/O和文本格式化,并利用第三方库创建跨平台界面。

    Yii2 vs Kohana:哪个框架更适合构建高性能桌面应用?
    Yii2 vs Kohana:哪个框架更适合构建高性能桌面应用?

    在当今互联网时代,桌面应用程序已慢慢被网页应用所取代。但是,仍有很多企业和个人需要使用桌面应用程序。那么,在你选择一个框架用于构建高性能桌面应用程序时,应该选择哪个框架呢?本文将探究Yii2和Kohana这两个框架,帮助你作出更好的决策。Yii2和Kohana都是基于PHP语言的开源框架。Yii2是一个高性能的Web应用程序开发框架,它提供了全面的架构和支持

    实现跨平台桌面应用的Golang方法
    实现跨平台桌面应用的Golang方法

    Golang(又称Go语言)是一种由Google开发的开源编程语言,通过其简洁、高效和强大的特性,越来越受到开发者的喜爱。在实现跨平台桌面应用程序时,Golang也提供了一些强大的工具和库,让开发变得更加简单和高效。本文将介绍如何使用Golang来实现跨平台桌面应用程序,并提供具体的代码示例供参考。1.使用fyne库创建跨平台GUI应用在Golang中,一

    使用Golang构建功能丰富的桌面应用
    使用Golang构建功能丰富的桌面应用

    利用Golang开发功能强大的桌面应用随着互联网的不断发展,人们已经离不开各种类型的桌面应用程序。而对于开发人员来说,如何利用高效的编程语言来开发功能强大的桌面应用至关重要。本文将介绍如何利用Golang(Go语言)来开发功能强大的桌面应用,并提供一些具体的代码示例。Golang是一种由Google开发的开源编程语言,它具有简洁、高效、并发性强等特点,非常适

    如何设计出色的Golang桌面应用
    如何设计出色的Golang桌面应用

    Golang如何实现优秀的桌面应用设计随着计算机技术的不断发展,桌面应用程序成为人们日常生活中不可或缺的一部分。Golang作为一种快速、高效的编程语言,也被越来越多的开发者用于构建各种类型的桌面应用程序。对于想要实现优秀桌面应用设计的开发者来说,掌握Golang的相关知识和技巧是非常重要的。本文将重点介绍如何利用Golang实现优秀的桌面应用设计,并提供具

    Golang应用于桌面开发的优点和挑战
    Golang应用于桌面开发的优点和挑战

    Golang在桌面应用开发中的优势与挑战随着计算机技术的不断发展,桌面应用程序在我们的生活和工作中扮演着越来越重要的角色。而在桌面应用程序的开发过程中,选择一种合适的编程语言至关重要。在今天的技术领域中,Golang作为一种快速、高效的编程语言,受到了越来越多开发者的青睐。本文将探讨Golang在桌面应用开发中的优势与挑战,并结合具体的代码示例进行说明。一、

    Golang桌面应用开发指南
    Golang桌面应用开发指南

    Golang桌面应用开发指南随着互联网的普及和数字化时代的来临,桌面应用程序在我们的生活和工作中扮演着越来越重要的角色。而作为一种强大的编程语言,Golang(Go语言)在桌面应用程序开发领域也逐渐崭露头角。本文将为您介绍如何使用Golang来开发桌面应用程序,并提供具体的代码示例,帮助您快速入门和掌握开发技巧。首先,我们需要了解一些基本概念和工具。在Gol

    开发Golang桌面应用的探索
    开发Golang桌面应用的探索

    标题:探索Golang在桌面应用中的应用近年来,Golang作为一种快速、高效的编程语言,被广泛应用在云计算、网络编程等领域。然而,除了在服务器端和Web应用中的应用,Golang在桌面应用开发中也展现出了潜力。本文将探索Golang在桌面应用中的应用,并结合具体的代码示例来展示其强大的功能和灵活性。一、Golang在桌面应用中的优势跨平台性:Golang的

    查看更多
    精品专题 更多
    装机必备
    装机必备

    正软商城装机必备专区,精选办公、浏览器、安全防护、影音播放、压缩解压、设计创作和系统工具等电脑常用正版软件,帮助用户快速完成新电脑软件配置。

    Windows
    Windows

    正软商城Windows软件专区,汇集适用于Windows电脑的办公、设计、安全防护、影音播放、开发工具和系统优化软件,提供软件介绍、系统要求、正版授权及购买下载服务。

    PDF教程
    PDF教程

    正软商城PDF教程频道提供PDF编辑、转换、合并、拆分、压缩及格式处理方法,同时介绍常用PDF软件和工具的使用技巧。

    Mac软件 更多
    讯飞智作 网页版
    讯飞智作 网页版
    Windows/ macOS/ Linux

    讯飞智作是一款基于语音合成技术、虚拟人驱动技术与数字人形象声音构建能力的 AI 数字人音视频创作平台。

    火山引擎 网页版
    火山引擎 网页版
    Windows/ macOS/ Linux

    火山引擎是字节跳动旗下企业级云与AI服务平台。聚焦大模型核心能力,依托字节自研豆包多模态大模型,凭借火山方舟一站式平台,提供模型精调、推理部署、智能应用搭建等全链路服务,结合高性能AI算力,助力各行业快速落地大模型数字化与智能化应用。

    Aperty macOS版
    Aperty macOS版
    macOS

    Aperty 是 Skylum 推出的 AI 人像修图软件,支持自然肤质修饰、瑕疵处理、面部与身体调整、预设及批量同步。

    WINDOWS 更多
    讯飞智作 网页版
    讯飞智作 网页版
    Windows/ macOS/ Linux

    讯飞智作是一款基于语音合成技术、虚拟人驱动技术与数字人形象声音构建能力的 AI 数字人音视频创作平台。

    火山引擎 网页版
    火山引擎 网页版
    Windows/ macOS/ Linux

    火山引擎是字节跳动旗下企业级云与AI服务平台。聚焦大模型核心能力,依托字节自研豆包多模态大模型,凭借火山方舟一站式平台,提供模型精调、推理部署、智能应用搭建等全链路服务,结合高性能AI算力,助力各行业快速落地大模型数字化与智能化应用。

    PixTV 网页版
    PixTV 网页版
    Windows

    PixTV 是一款在浏览器中使用的 AI 视觉内容创作平台,提供图片、视频、音频、文字生成、AI 分镜、局部重绘、提示词反推和无限画布等工具,适合短剧、漫剧、广告及社交媒体内容制作。