Tauri 撸代码的确舒服,最后的包也很小,但是分发着实蛋疼,和目前成熟的 Electron 方案比起来还是差太远。
由于要发布到 AppStore ,遇到的第一个问题就是,app 签名老是失败。但是我复制 tauri 日志执行的命令手动执行,反而签名成功了。
再一个 Tauri 打出来的包是 dmg,需要自行用工具转换成 pkg 才能用苹果的 Transporter 上传到 AppStore 。
我用 productbuild 打包出来的 pkg 安装包,测试安装一直失败,Applications 目录就是找不到装好的软件。
Google 了半天才了解清楚,pkg 检测到同目录还有一个 xxx.app,结果直接安装到 xxx.app 里面去了,根本就不会安装到系统的 Applications 目录。
最后反而还需要写一个 build.sh 构建脚本,大概流程是:
- 1.yarn tauri build
- 2.对 xxx.app 进行 MacApp distribution 签名
- 3.将 xxx.app 打包成 pkg,同时进行 MacApp installer 签名
整个流程搞完了,最后 Transporter 上传上去,提示 entitlements 没有配置沙盒,瞬间崩溃了,体验真的不好。
Tauri 目前文档太简陋了,很多功能还不能和 Electron 对标,不过用来写一个不用发布到官方商店的小工具还是不错的。
明天准备把代码迁移回 Electron,只有等 Tauri 成熟后再看看吧。
ps.构建 macOS arm 架构的 universel 包一直失败,按照官方文档的命令敲,一直构建失败,对 rust 不熟悉,去 issues 里翻了下,最后还是没找到解决方案。