Loading [MathJax]/jax/output/CommonHTML/config.js
前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >微软的混合开发解决方案 WebView2

微软的混合开发解决方案 WebView2

作者头像
程序那些事儿
发布于 2023-03-07 03:42:45
发布于 2023-03-07 03:42:45
1.9K0
举报
文章被收录于专栏:程序那些事儿程序那些事儿

混合开发

我们都知道对于桌面应用开发来说,人们常用的方式就是采用c++或者c#,java等进行开发,然而这些语言开发效率不够高,不如网页开发灵活。因此,人们思考能否采用html+css+js的方式来开发桌面客户端呢,于是人们就提出了混合开发概念,并且开发了electron框架进行桌面开发。

提到electron开发的桌面应用,就不得不提vscode,这个采用css+js+html开发的编辑器从诞生以来就逐渐占据市场的份额,现在几乎绝大部分的前端开发者都采用vscode进行开发,而且也有很多后端开发者逐渐采用vscode进行后端开发,可以说vscode证明了electron也可以开发出优秀的桌面程序。当然,除了vscode之外,whatsapp和twitch还有slack也是采用electron开发的。

webview2

webview2是微软推出的一组控件,它可以让本地应用程序轻松嵌入web技术。WebView2 控件使用Microsoft Edge作为呈现引擎在本机应用程序中显示 Web 内容。使用 WebView2,您可以将 Web 代码嵌入到本机应用程序的不同部分,或在单个 WebView 实例中构建所有本机应用程序。

Webview2 应用程序允许广泛的覆盖范围。作为 Web 开发人员,您可以跨不同平台重用大部分代码。对于要访问本机平台的所有功能,则推荐直接使用本机应用程序。

webview2 由来

之所以称为 WebView2,是因为它取代了 WebView 控件,而后者又取代了 WebBrowser 控件,老派 Win32 开发人员可能还记得。WebView 使用原始的 Edge (Trident) 渲染引擎,是 Windows10 唯一的控件。WebView2 使用较新的 Edge 渲染引擎,并支持更多 Windows 平台。

webview2优点

  • 丰富的网络生态,因为采用web技术,因此丰富的web框架和库都可以拿来直接使用。
  • 迭代和更新变得异常方便
  • 提供了全套访问本地的功能接口。
  • 多个平台的代码可以复用,一套代码多个平台。
  • 微软官方支持开发和维护。
  • 多个版本控制,可以选用不同的chromium进行打包。

webview2使用方式

  • 通过安装开发版的Edge (Chromium),可以支持webview2的开发。
  • 安装独立的WebView2 Runtime,它可以独立下载和升级
  • 将Edge chromium内核嵌入到程序之中。

webview2 vs electron

Electron 为常见的桌面应用程序需求提供 API,例如菜单、文件系统访问、通知等。

WebView2 是一个组件,旨在集成到 WinForms、WPF、WinUI 或 Win32 等应用程序框架中。

Node.js 被集成到 Electron 中。Electron 应用程序可以使用来自渲染器和主进程的任何 Node.js API、模块或 node-native-addon。

WebView2 应用程序支持嵌入到多种编程语言之中。您的 JavaScript 代码必须通过应用程序主机进程代理执行访问操作系统。

Electron 努力保持与 Web API 的兼容性。

Electron 具有可配置的 Web 内容安全模型,从完全访问到完全沙盒。WebView2 内容始终被沙盒化.

webview2未来

目前的webview2还只是支持windows的各个版本预览,未来,webview将会支持UWP 预览 ,macOS 预览,Xbox 预览,HoloLens 预览,Linux 预览,总之,webview2未来可期。

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2022-01-24,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 程序那些事儿 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
跨平台桌面开发,Electron还是WebView2 (下篇)
好了,前面两篇铺垫了一些内容,这周终于进行这个话题的核心内容了,就是对于跨平台桌面来说,Electron与WebView2这两个非常类似的技术方案究竟哪个更合适?
御剑
2022/03/09
13K0
跨平台桌面开发,Electron还是WebView2 (下篇)
十年“屎山”终重构,但 QQ选用了微软 Teams 放弃的 Electron
整理 | 褚杏娟   根据百度百科消息,2023 年 4 月 23 日,新版 Windows QQ 正式开启用户公测,采用全新 QQ NT 架构,并带来了全新交互界面。 去年,随着 QQ for macOS 的更新,QQ 全新的 NT 技术架构走进大众视野。腾讯表示,QQ 将使用全新的 QQ NT 技术,对 QQ 底层代码进行一次全方位重构。 去年 12 月,QQ for Linux 3.0 正式版上架 QQ 官网,Linux 用户可以直接下载进行尝试。该版本采用了全新的 QQ NT 技术架构,并可支持 x
深度学习与Python
2023/04/30
2K0
十年“屎山”终重构,但 QQ选用了微软 Teams 放弃的 Electron
Electron 吞噬资源,微软 Teams 为性能改用 WebView2
微软近期宣布,旗下 Teams 应用活跃用户已经达到惊人的 2.5 亿。这让 Teams 成了继 Word 和 Excel 之后,微软 Office 生产力套件中的又一位当红明星。然而,Teams 一直受到性能问题的困扰,用户们对此吐槽不断。
HelloGitHub
2021/11/12
3.7K0
玩过Tauri和Electron,最终我选择Flutter
Flutter、Tauri 和 Electron 都是现代桌面应用程序开发的流行选择,每种技术有其独特的优缺点,本文将对它们进行技术对比。
老码小张
2023/04/16
12.3K0
玩过Tauri和Electron,最终我选择Flutter
微软要放弃Electron了???聊聊WebView2
有好几个公众号发文说“微软要放弃Electron了”,实际情况是微软旗下的Teams产品打算把Electron框架换成WebView2而已。接下来我就聊一下这个事情:
liulun
2021/12/28
4.1K0
微软要放弃Electron了???聊聊WebView2
.NET混合开发解决方案1 WebView2简介
  在我的博客《.NET桌面程序集成Web网页开发的多种解决方案》中介绍了10种.NET集成网页开发的控件。本系列着重介绍 Microsoft Edge WebView2 组件技术。
张传宁IT讲堂
2022/05/09
2.2K0
.NET混合开发解决方案1 WebView2简介
.NET混合开发解决方案11 WebView2加载的网页中JS调用C#方法
  在我的博客《.NET混合开发解决方案10 WebView2控件调用网页JS方法》中介绍了C#调用网页中定义的JavaScript方法以执行某种业务逻辑,同样WebView2控件中加载的网页中自定义的JavaScript方法中也可以调用C#方法。
张传宁IT讲堂
2022/05/11
11.2K1
.NET混合开发解决方案11 WebView2加载的网页中JS调用C#方法
.NET混合开发解决方案24 WebView2对比CefSharp的超强优势
.NET混合开发解决方案19 使用 DevTools 协议帮助程序  .NET混合开发解决方案20 使用 Microsoft Edge WebDriver 自动执行和测试 WebView2 应用 .NET混合开发解决方案21 WebView2 应用的开发最佳做法 .NET混合开发解决方案22 开发安全的 WebView2 应用 .NET混合开发解决方案23 将 WebView2 应用分发为单个可执行文件
张传宁IT讲堂
2022/06/30
3.4K0
.NET混合开发解决方案24 WebView2对比CefSharp的超强优势
微软偷偷决定不开源 Linux 及 macOS 版 WebView2,网友:等了四年,我还是用 Electron?!
2021 年,有用户曾在 GitHub 上发帖询问微软的 WebView2 组件是否会支持 Linux 和 macOS 系统。WebView2 是微软基于自家 Edge 浏览器打造的开源渲染组件,相当于微软 Edge 浏览器的一个缩小版本。
深度学习与Python
2024/07/24
2540
微软偷偷决定不开源 Linux 及 macOS 版 WebView2,网友:等了四年,我还是用 Electron?!
仅仅过去 4 年,微软最终放弃了它!
2017 年时,Electron 可以说是 Web 应用在桌面平台发布的最佳、甚至是唯一选项,但如今它却成了需要被优化淘汰的对象。
架构师修行之路
2022/02/16
2.7K0
仅仅过去 4 年,微软最终放弃了它!
Winform 使用WebView2 开发现代应用
它允许开发者将现代 Web 技术(如 HTML、CSS 和 JavaScript)与桌面应用相结合,从而构建强大、灵活的用户界面。
郑子铭
2025/02/18
3580
Winform 使用WebView2 开发现代应用
跨平台桌面开发,Electron还是WebView2 (上篇)
我在2020年曾经基于Electron开发过一个跨平台桌面应用,在一定的条件下,Electron是非常好的选择。
御剑
2022/03/09
4.2K0
跨平台桌面开发,Electron还是WebView2 (上篇)
.NET混合开发解决方案10 WebView2控件调用网页JS方法
  客户端程序(WinForm、WPF、Win32、WinUI)集成WebView控件加载Web完成后,还有两种常见的需求
张传宁IT讲堂
2022/05/09
3.3K0
.NET混合开发解决方案10 WebView2控件调用网页JS方法
Electron末日来了?又一应用将其抛弃!WhatsApp强制推行原生应用:速度更快、内存占用更少
Electron 又被嫌弃了,让人又爱又恨的 Electron 还能扛起跨平台开发框架的大旗吗?
深度学习与Python
2023/08/09
5850
Electron末日来了?又一应用将其抛弃!WhatsApp强制推行原生应用:速度更快、内存占用更少
.NET混合开发解决方案5 WebView2运行时与分发应用
  发布使用Microsoft Edge WebView2的应用程序时,客户端计算机上需要安装WebView2运行时,可以安装自动更新的Evergreen运行时,也可以安装固定版本的。
张传宁IT讲堂
2022/05/09
1.8K0
.NET混合开发解决方案5 WebView2运行时与分发应用
.NET混合开发解决方案14 WebView2的基本身份验证
  WebView2 应用的基本身份验证包括从 HTTP 服务器检索网页的一系列身份验证和导航步骤。 WebView2 控件充当主机应用和 HTTP 服务器之间通信的中介。
张传宁IT讲堂
2022/05/13
1.8K0
.NET混合开发解决方案14 WebView2的基本身份验证
.NET混合开发解决方案9 WebView2控件的导航事件
  在我的博客《.NET混合开发解决方案7 WinForm程序中集成WebView2》中介绍了WinForm程序中集成WebView2组件的详细步骤以及注意事项。这只是最基本的应用,WebView2功能之所以强大,是因为它提供了很多开放的属性与事件供开发者调用以完成复杂的功能。具体可以参考我的博客《.NET混合开发解决方案2 WebView2与Edge浏览器的区别》。
张传宁IT讲堂
2022/05/09
1K0
.NET混合开发解决方案9 WebView2控件的导航事件
.NET桌面程序集成Web网页开发的十种解决方案
  B/S架构的Web程序几乎占据了应用软件的绝大多数市场,但是C/S架构的WinForm、WPF客户端程序依然具有很实用的价值,如设计类软件 AutoCAD与Autodesk Revit、WPS、IT类的集成开发环境(数据库、图形处理软件)、PC端的小工具等等,充分利用了客户端电脑的资源综合计算能力,处理性能更加优秀。如果想在C/S架构的客户端程序中集成Web应用,也只能借助Web网页,然后将网页集成到客户端程序中,这样就间接的达到了目的。下面是客户端审图系统中集成Web网页的实际应用案例
张传宁IT讲堂
2022/05/09
3.1K0
.NET桌面程序集成Web网页开发的十种解决方案
10年了,开发人员仍然不明白 Electron 的意义
在现代开发人员的工具箱中,Electron 是最有名的工具之一。如果你仔细观察,就会发现它是 React Native 的表兄弟,承诺 “一次编写、随处发布”,但构建和发布开销远小于移动开发。它的杀手锏是将 Node.js 和 Chromium 捆绑在一起,为 Web 技术创建了一个强大的桌面运行时。Electron 官方博客庆祝了它的 10 周年纪念日,考虑到它对开发文化的渗透之深,这真是太激动人心了。
深度学习与Python
2025/02/05
1080
10年了,开发人员仍然不明白 Electron 的意义
从 IE 到 Edge:我们跟微软浏览器团队聊了聊Web的过去和未来 | 中国卓越技术团队访谈录
作者 | Tina 策划 | 蔡芳芳 对资深 Web 开发者来说, <!--[if IE 6]>这行代码并不陌生。Internet Explorer 曾是 Web 2.0 的源泉,是 Internet 创新驱动力,历经了兴起和衰落,而后成为了 Web 开发者的痛点。2022 年 6 月 15 日,微软 IE 正式退役,在过去的 27 年里,IE 所经历的整个的生命周期其实也是互联网从萌芽到繁盛的历史。 接替 IE 的是 2015 年诞生的 Microsoft Edge,这是一款带有复兴使命的浏览器产品
深度学习与Python
2023/03/29
7300
从 IE 到 Edge:我们跟微软浏览器团队聊了聊Web的过去和未来 | 中国卓越技术团队访谈录
推荐阅读
相关推荐
跨平台桌面开发,Electron还是WebView2 (下篇)
更多 >
领券
💥开发者 MCP广场重磅上线!
精选全网热门MCP server,让你的AI更好用 🚀
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档