主要观点总结
得物商家客服团队决定从Electron迁移到Tauri框架,以解决Electron应用在性能、内存占用、CPU占用以及包体积上的问题。迁移过程涉及多个方面,包括技术调研、代码迁移、构建打包、签名更新等。尽管Tauri在性能和体积上有所提升,但仍面临社区活跃度不足、Webview2问题、以及成熟度和稳定性不够的挑战。未来,得物商家客服将继续优化应用并提升用户体验。
关键观点总结
关键观点1: 技术调研
在选择框架时,得物商家客服考虑了Electron和Tauri。最终选择Tauri是因为其更小的包体积、更高的性能和更少的内存占用。
关键观点2: 代码迁移
将Electron代码迁移到Tauri涉及调整目录结构、处理跨域请求、兼容关键性API以及进行兼容性回归测试。
关键观点3: 构建打包
Tauri提供了构建工具,支持不同平台的构建,如Windows、MacOS和Linux。在Windows 7上,需要特别处理Webview2的兼容性问题。
关键观点4: 签名更新
Tauri支持签名和更新机制,但需要自行处理签名过程,并确保更新机制兼容不同操作系统。
关键观点5: 社区和稳定性
尽管Tauri在性能和体积上有所提升,但面临社区活跃度不足、Webview2兼容性问题以及成熟度和稳定性不够的挑战。
文章预览
↓推荐关注↓ 目录 一、背景 二、技术调研 1. Electron的核心模块 2. Tauri的核心模块 3. 选型总结 三、技术实现 1. 渲染进程代码迁移 2. 主进程代码迁移 3. 应用构建打包 4. 应用签名 & 更新 四、收益 & 总结 1. 社区活跃度还需要提升 2. Webview2的问题 3. 成熟度和稳定性还不够 一 背景 得物商家客服采用的是桌面端应用表现形式,而桌面端应用主要架构形式就是一套和操作系统交互的“后端” + 一套呈现界面的“前端(渲染层)”。而桌面端技术又可以根据渲染层的不同核心划分为以下几类: C语言家族:原生开发、QT Chromium家族:NW、Electron、CEF Webview 家族:Tauri、pywebview、webview_java 自立山头:Flutter 在2022年5月份左右,得物商家客服开始投入桌面端应用业务,其目标是一个可以适配多操作系统(MacOS、Windows)
………………………………