为什么要用tauri开发跨平台桌面

devtools/2025/2/2 18:50:41/

1、跨平台:tauri目前能跑PC和移动端,支持windows,macos,linux,android,ios。

2、体积小:electron打包非常大,特别是在macos中打包,大得可怕。我在macos中打包了一个electron项目,占600MB,改成tauri,只用了16MB。这差距太大了,macos的硬盘很贵的。

3、兼容性:tauri依靠webview2或者其他类似webview的技术,确实有一些兼容性问题。问题主要出现在linux上,靠WebKitGTK渲染。但是WebKitGTK这个技术,非常的烂,导致tauri在linux会遇到一些问题。我们不能因为一个linux就放弃win,macos,android,ios这么多平台吧,我们把兼容性问题解决掉不就行了吗。我在linux中找到的答案就是electron,这话听起来很矛盾,你不是用tauri吗?扯什么electron呢?其实并不矛盾。你把tauri拆开,它就是一个前端+rust后端。把前端用electron包装起来,rust后端单独使用就是了,我们叫它手动挡的tauri。然后你把这个rust后端打包进electron,随着electron启动和关闭。这样就实现了手动挡的tauri,你在linux里面的渲染也就不会乱了。

4、学习rust的利器:学习rust是很枯燥的,很容易被劝退。你用tauri做一点小功能出来,看得见,摸得着。对于你信心的提升,是有好处的。

5、易用性:利用vue或者react这些海量的组件,你很轻易就能通过tauri把他们打包到windows,macos,linux,android,ios上去运行。特别是在移动端,这完全就是突破。

6、高性能:如果想提高tauri的性能,太简单了。把所有的业务全部放到rust代码中,前端只负责渲染。这样的话,你的tauri性能是可以和原生程序相比的,因为rust的关系,也有机率超过原生。

作者用tauri做了电子表格工具hpctb的macos版本,win和linux用的是electron。两个框架是同一套代码,只是部分参数改一下格式。做好其中一套,换另外一套,所需要的时间仅仅是半天。再次申明,作者不是高手,只是个半入门rust的人。


http://www.ppmy.cn/devtools/155513.html

相关文章

设计转换Apache Hive的HQL语句为Snowflake SQL语句的Python程序方法

首先,根据以下各类HQL语句的基本实例和官方文档记录的这些命令语句各种参数设置,得到各种HQL语句的完整实例,然后在Snowflake的官方文档找到它们对应的Snowflake SQL语句,建立起对应的关系表。在这个过程中要注意HQL语句和Snowfla…

【PyTorch】5.张量索引操作

目录 1. 简单行、列索引 2. 列表索引 3. 范围索引 4. 布尔索引 5. 多维索引 个人主页:Icomi 在深度学习蓬勃发展的当下,PyTorch 是不可或缺的工具。它作为强大的深度学习框架,为构建和训练神经网络提供了高效且灵活的平台。神经网络作为…

目标检测与语义分割

目标检测 图片分类问题是判断图片中是否存在特定的对象。 图片定位分类问题除了判断图片是否包含特定对象外,还要定位对象在图像中的位置,并使用**边界框(bounding box)**标记出该位置。 边界框的四个参数为 b x b_{x} bx​&#…

JavaScript原型链与继承:优化与扩展的深度探索

在 JavaScript 的世界里,万物皆对象,而每个对象都有一个与之关联的原型对象,这就构成了原型链的基础。原型链,简单来说,是一个由对象的原型相互连接形成的链式结构 。每个对象都有一个内部属性[[Prototype]]&#xff0…

【前端】Electron入门开发教程,从介绍Electron到基础引用以及部分深度使用,附带常见的十个报错问题的解决方案和代码优化。

Electron 是一个使用 JavaScript、HTML 和 CSS 等 Web 技术创建跨平台桌面应用程序的框架。它结合了 Chromium 渲染引擎和 Node.js 运行时,允许开发者构建高质量的桌面应用。下面是一个简要的 Electron 开发教程,从基础到深入,并包括一些常见…

物联网智能项目之——智能家居项目的实现!

成长路上不孤单😊😊😊😊😊😊 【14后😊///计算机爱好者😊///持续分享所学😊///如有需要欢迎收藏转发///😊】 今日分享关于物联网智能项目之——智能家居项目…

Spring Boot 高级开发指南:全面掌握微服务架构的关键技术

Spring Boot 是现代 Java 开发的主流框架,尤其在构建微服务架构时,它提供了丰富的工具与功能,帮助开发者快速构建高效、健壮的系统。本文将围绕 13 个关键的高级概念展开,逐一分析 Spring Boot 在微服务开发中的核心技术&#xff…

【二叉搜索树】

二叉搜索树 一、认识二叉搜索树二、二叉搜索树实现2.1插入2.2查找2.3删除 总结 一、认识二叉搜索树 二叉搜索树(Binary Search Tree,简称 BST)是一种特殊的二叉树,它具有以下特征: 若它的左子树不为空,则…