我的编程空间,编程开发者的网络收藏夹
学习永远不晚

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

短信预约 -IT技能 免费直播动态提醒
省份

北京

  • 北京
  • 上海
  • 天津
  • 重庆
  • 河北
  • 山东
  • 辽宁
  • 黑龙江
  • 吉林
  • 甘肃
  • 青海
  • 河南
  • 江苏
  • 湖北
  • 湖南
  • 江西
  • 浙江
  • 广东
  • 云南
  • 福建
  • 海南
  • 山西
  • 四川
  • 陕西
  • 贵州
  • 安徽
  • 广西
  • 内蒙
  • 西藏
  • 新疆
  • 宁夏
  • 兵团
手机号立即预约

请填写图片验证码后获取短信验证码

看不清楚,换张图片

免费获取短信验证码

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

npm install electron@latest

下面就来看看 Electron 24.0.0 都有哪些更新吧!

技术栈

  • Chromium 112.0.5615.49

Chrome 112 更新详情:https://developer.chrome.com/blog/new-in-chrome-112/

Chrome 111 更新详情:https://developer.chrome.com/blog/new-in-chrome-111/

DevTools 112 更新详情:https://developer.chrome.com/blog/new-in-devtools-112/

DevTools 111 更新详情:https://developer.chrome.com/blog/new-in-devtools-111/

  • Node.js 18.12.1
  • Node 18.12.1 更新详情:https://nodejs.org/en/blog/release/v18.12.1/

  • V8 11.0

重大变化

API 已更改:nativeImage.createThumbnailFromPath(path, size)

maxSize​ 参数已更改为 size​,以反映传入的大小将是创建的缩略图的大小。以前,如果图像小于 maxSize​,Windows 不会放大图像,而 macOS 会始终将大小设置为 maxSize。现在跨平台的行为是相同的。

// 128x128 图片
const imagePath = path.join('path', 'to', 'capybara.png');

// 放大较小的图像
const upSize = { width: 256, height: 256 };
nativeImage.createThumbnailFromPath(imagePath, upSize).then((result) => {
console.log(result.getSize()); // { width: 256, height: 256 }
});

// 按比例缩小较大的图像
const downSize = { width: 64, height: 64 };
nativeImage.createThumbnailFromPath(imagePath, downSize).then((result) => {
console.log(result.getSize()); // { width: 64, height: 64 }
});

弃用:BrowserWindow.setTrafficLightPosition(position)

BrowserWindow.setTrafficLightPosition(position)​ 已被弃用,应改用 BrowserWindow.setWindowButtonPosition(position)​ API,它接受 null​ 而不是 { x: 0, y: 0 } 以将位置重置为系统默认值。

// 在 Electron 24 中弃用
win.setTrafficLightPosition({ x: 10, y: 10 });
win.setTrafficLightPosition({ x: 0, y: 0 });

// 替换为
win.setWindowButtonPosition({ x: 10, y: 10 });
win.setWindowButtonPosition(null);

弃用:BrowserWindow.getTrafficLightPosition()

BrowserWindow.getTrafficLightPosition()​ 已被弃用,应改用 BrowserWindow.getWindowButtonPosition()​ API,当没有自定义位置时,它返回 null​ 而不是 { x: 0, y: 0 }。

// 在 Electron 24 中弃用
const pos = win.getTrafficLightPosition();
if (pos.x === 0 && pos.y === 0) {
// No custom position.
}

// 替换为
const ret = win.getWindowButtonPosition();
if (ret === null) {
// 没有自定义位置
}

新特性

  • 添加了使用 cookies.get() 过滤 HttpOnly cookie 的功能。
  • 将 logUsage 添加到 shell.openExternal() 选项,这允许将 SEE_MASK_FLAG_LOG_USAGE 标志传递给 Windows 上的 ShellExecuteEx。SEE_MASK_FLAG_LOG_USAGE 标志表示用户发起的启动,可以跟踪常用程序和其他行为。
  • 向 webRequest 过滤器添加 types,添加过滤监听的请求的能力。
  • 向 webContents 添加了一个新的 devtools-open-url 事件,以允许开发人员使用它们打开新窗口。
  • 向 webContents.print() 添加了几个标准页面大小选项。
  • 向会话处理程序 ses.setDisplayMediaRequestHandler() 回调添加了 enableLocalEcho 标志,以允许在音频为 WebFrameMain 时在本地输出流中回显远程音频输入。
  • 允许将特定于应用的用户名传递给 inAppPurchase.purchaseProduct()。
  • 公开 window.invalidateShadow() 以清除 macOS 上残留的视觉伪影。
  • 整个程序优化现在在 Electron 节点头文件配置文件中默认启用,允许编译器使用程序中所有模块的信息执行优化,而不是基于每个模块(编译)。
  • SystemPreferences::CanPromptTouchID (macOS) 现在支持 Apple Watch。

结束对 21.x.y 的支持

根据项目的支持政策,Electron 21.x.y 已终止支持。鼓励开发人员和应用程序升级到更新版本的 Electron。

E24 (2023.4)

E25 (2023.5)

E26 (2023.6)

24.x.y

25.x.y

26.x.y

23.x.y

24.x.y

25.x.y

22.x.y

23.x.y

24.x.y

参考:​https://www.electronjs.org/blog/electron-24-0

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

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

下载Word文档到电脑,方便收藏和打印~

下载Word文档

猜你喜欢

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

maxSize 参数已更改为 size,以反映传入的大小将是创建的缩略图的大小。以前,如果图像小于 maxSize,Windows 不会放大图像,而 macOS 会始终将大小设置为 maxSize。现在跨平台的行为是相同的。

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

12 月 5 日,Electron 28.0.0 正式发布!该版本包括了对 Chrome 120.0.6099.56、V8 12.0 和 Node.js 18.18.2 的升级。下面就来看看该版本都有哪些更新吧!
Electron前端2024-11-30

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

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

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

systemPreferences.getAppLevelAppearance​ 和 systemPreferences.setAppLevelAppearance​ 方法以及 systemPreferences.appLevelAppea

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

10 月 10 日,Electron 27.0.0 正式发布!该版本包括了对 Chrome 118.0.5993.32、V8 11.8 和 Node.js 18.17.1 的升级。下面就来看看该版本都有哪些更新吧!

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

Electron 22 (Chromium 108) 的计划生命周期结束日期将从 2023 年 5 月 30 日延长至 2023 年 10 月 10 日。Electron 团队将继续向后移植任何安全修复到 Electron 22 中,直到

Electron前端开发入门:构建跨平台桌面应用的利器

Electron为前端开发者提供了一个强大的平台,使他们能够利用熟悉的Web技术来构建跨平台的桌面应用。

怎么实现Golang跨平台进行GUI桌面应用程序开发

本篇内容主要讲解“怎么实现Golang跨平台进行GUI桌面应用程序开发”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“怎么实现Golang跨平台进行GUI桌面应用程序开发”吧!golang能开发桌
2023-06-16

Golang也可以跨平台的进行GUI桌面应用程序开发

如果说现在火热的语言是什么捏,想必最近几年golang语言可谓独胜一筹,根据我的了解,目前京东、阿里、360、百度等等都有使用。随着golang在高并发的良好应用,越来越多的开发者开始使用golang。

在Laravel平台上使用NativePHP开发创新的桌面应用程式

使用NativePHP在Laravel平台上开发创新的桌面应用程序随着技术的发展和人们对用户体验的要求日益增长,创新的桌面应用程序成为了各种行业中的关键需求。而Laravel作为一款优秀的PHP开发框架,以其高效、可扩展性和易用性广受开发者
在Laravel平台上使用NativePHP开发创新的桌面应用程式
2023-12-20

如何解析移动应用的跨平台开发工具Xamarin和React Native

这篇文章跟大家分析一下“如何解析移动应用的跨平台开发工具Xamarin和React Native”。内容详细易懂,对“如何解析移动应用的跨平台开发工具Xamarin和React Native”感兴趣的朋友可以跟着小编的思路慢慢深入来阅读一下
2023-06-17

聚焦企业级应用开发,网易数帆轻舟低代码平台2.0正式发布

8月26日,网易数帆举办以“破局企业级应用开发 让业务数字化触手可及“为主题的线上发布会,正式发布轻舟低代码应用开发平台2.0版本(以下简称“轻舟低代码平台”)。以全新的可视化编程语言为特色,轻舟低代码平台致力于推动软件开发模式的创新变革,

编程热搜

  • Python 学习之路 - Python
    一、安装Python34Windows在Python官网(https://www.python.org/downloads/)下载安装包并安装。Python的默认安装路径是:C:\Python34配置环境变量:【右键计算机】--》【属性】-
    Python 学习之路 - Python
  • chatgpt的中文全称是什么
    chatgpt的中文全称是生成型预训练变换模型。ChatGPT是什么ChatGPT是美国人工智能研究实验室OpenAI开发的一种全新聊天机器人模型,它能够通过学习和理解人类的语言来进行对话,还能根据聊天的上下文进行互动,并协助人类完成一系列
    chatgpt的中文全称是什么
  • C/C++中extern函数使用详解
  • C/C++可变参数的使用
    可变参数的使用方法远远不止以下几种,不过在C,C++中使用可变参数时要小心,在使用printf()等函数时传入的参数个数一定不能比前面的格式化字符串中的’%’符号个数少,否则会产生访问越界,运气不好的话还会导致程序崩溃
    C/C++可变参数的使用
  • css样式文件该放在哪里
  • php中数组下标必须是连续的吗
  • Python 3 教程
    Python 3 教程 Python 的 3.0 版本,常被称为 Python 3000,或简称 Py3k。相对于 Python 的早期版本,这是一个较大的升级。为了不带入过多的累赘,Python 3.0 在设计的时候没有考虑向下兼容。 Python
    Python 3 教程
  • Python pip包管理
    一、前言    在Python中, 安装第三方模块是通过 setuptools 这个工具完成的。 Python有两个封装了 setuptools的包管理工具: easy_install  和  pip , 目前官方推荐使用 pip。    
    Python pip包管理
  • ubuntu如何重新编译内核
  • 改善Java代码之慎用java动态编译

目录