vieyahn2017 / jsup

0 stars 1 forks source link

tauri #9

Open vieyahn2017 opened 11 months ago

vieyahn2017 commented 11 months ago

tauri基本学习.md - nsfoxer - 博客园

https://www.cnblogs.com/nsfoxer/p/17465316.html

vieyahn2017 commented 11 months ago

PS D:\javaway\2023\rust\tauri-demo-1> npm run tauri info

tauri-demo-1@0.0.0 tauri tauri info

[✔] Environment

[-] Packages

[-] App

vieyahn2017 commented 11 months ago

遇到错

Compiling tauri-demo-1 v0.0.0 (D:\javaway\2023\rust\tauri-demo-1\src-tauri) Compiling tauri-macros v1.4.0 Compiling webview2-com v0.19.1 Finished dev [unoptimized + debuginfo] target(s) in 2m 04s thread '' panicked at 'called Result::unwrap() on an Err value: Os { code: 216, kind: Uncategorized, message: "该版本的 %1 与你运行的 Windows 版本不兼容。请查看计算机的系统信息,然后联系软件发布者。" }', src\interface\rust\desktop.rs:57:63 note: run with RUST_BACKTRACE=1 environment variable to display a backtrace

vieyahn2017 commented 11 months ago

https://github.com/tauri-apps/tauri/issues/7123

官方回复是 This error means that you're using a version of Visual Studio Build Tools that are too old for tauri. You need version 2019 or 2022 (with the C++ workload and Windows 10 SDK selected) https://tauri.app/v1/guides/getting-started/prerequisites#1-microsoft-visual-studio-c-build-tools. Version 2017 that you have installed will not work.

但是,实际上可能并不是,我把vs2017换成2022也一样。 这边说了 [atfox98] commented [on Jun 6] I tried making a project with cargo create-tauri-app and everything worked out fine. I think it might have been a problem with svelte-add, although I'm not 100% sure. Going ahead and closing. Thank you for your help

vieyahn2017 commented 11 months ago

D:\javaway\2023\rust>npm create tauri-app@latest ✔ Project name · tauri-demo-1 ✔ Choose which language to use for your frontend · TypeScript / JavaScript - (pnpm, yarn, npm) ✔ Choose your package manager · npm ✔ Choose your UI template · Vue - (https://vuejs.org) ✔ Choose your UI flavor · TypeScript

Template created! To get started run: cd tauri-demo-1 npm install npm run tauri dev

之前报错的操作方式

vieyahn2017 commented 11 months ago

目前成功:

cargo install create-tauri-app

PS D:\javaway\2023\rust> cargo create-tauri-app ✔ Project name · tauri-cargo-demo1 ✔ Choose which language to use for your frontend · TypeScript / JavaScript - (pnpm, yarn, npm) ✔ Choose your package manager · npm ✔ Choose your UI template · React - (https://reactjs.org/) ✔ Choose your UI flavor · TypeScript

Template created! To get started run: cd tauri-cargo-demo1 npm install npm run tauri dev

vieyahn2017 commented 11 months ago

https://github.com/pewsheen/tauri-echarts-demo

vieyahn2017 commented 11 months ago

npm run tauri build

https://zhuanlan.zhihu.com/p/642643576

wix 下载超时 https://github.com/wixtoolset/wix3/releases/download/wix3112rtm/wix311-binaries.zip: Connection Failed: Connect error:

tauri对于wix的判断位于https://github.com/tauri-apps/tauri/blob/dev/tooling/bundler/src/bundle/windows/msi.rs#L29 追踪代码你可以发现其实tauri对于WixTools的处理就是单纯的从Github上下载压缩包,然后将其解压缩放到C:\Users\\AppData\Local\tauri\WixTools里面 至于WixTools的下载地址,如果你遇到了这个报错,那在报错的窗口中就会有对应的下载地址,点那个链接下载即可

nsis 下载超时

解压缩从NSIS_URL下载的nsis-3.zip 把解压缩后的nsis-3.08文件夹重命名为NSIS 解压缩从NSIS_APPLICATIONID_URL下载的NSIS-ApplicationID.zip到NSIS\Plugins 把NSIS\Plugins\ReleaseUnicode\ApplicationID.dll复制到NSIS\Plugins\x86-unicode\ApplicationID.dll 把从NSIS_TAURI_UTILS下载的nsis_tauri_utils.dll复制到NSIS\Plugins\x86-unicode\nsis_tauri_utils.dll 把组装好的NSIS文件夹复制到C:\Users\\AppData\Local\tauri 这样就完成了nsis相关的依赖处理,再运行pnpm tauri build就不会报nsis错误了

https://github.com/tauri-apps/binary-releases/releases/download/nsis-3/nsis-3.zip https://github.com/tauri-apps/binary-releases/releases/download/nsis-plugins-v0/NSIS-ApplicationID.zip https://github.com/tauri-apps/nsis-tauri-utils/releases/download/nsis_tauri_utils-v0.1.1/nsis_tauri_utils.dll

vieyahn2017 commented 11 months ago

https://github.com/vwallen/tauri-pixi-demo/

气泡动画,可以改改作为抽奖活动

vieyahn2017 commented 11 months ago

最先的rust案例 https://github.com/dmilford/rust-3d-demo

vieyahn2017 commented 11 months ago

使用 Tauri 打包已存在的项目

一个例子

使用tauri构建jsonviewer本地软件

=======

下载网页静态资源

首先,我们需要下载一个现成的网络应用,即一个 JSON 查看器。这里我选择了 https://jsonviewer.stack.hu/这个网站,它提供了一个简洁而强大的 JSON 查看和编辑功能。我们可以使用浏览器的开发者工具来查看它的静态资源文件,如 HTML、CSS、JS、图片等,并将它们保存到本地。为了方便起见,我将这些文件放在了一个名为 web-app 的文件夹中。

下载完成后,我们需要验证这些文件的完整性和可用性。我们可以使用一个简单的 HTTP 服务器来在本地运行这个网页应用,并检查是否有任何错误或缺失的文件。我使用了 Python 的内置模块 http.server 来启动一个 HTTP 服务器,并在浏览器中访问 http://localhost:8000 来查看效果。

如果一切正常,我们就可以继续下一步,即使用 Tauri 来打包这个网页应用。

使用 Tauri 打包已存在的项目

要使用 Tauri 来打包已存在的项目,我们需要先安装一些必要的工具和依赖。根据 Tauri 的官方文档2,我们需要安装以下内容:

Node.js 和 npm

Rust 和 Cargo

Visual Studio 2019 Build Tools

Tauri CLI

安装完成后,我们可以在 web-app 文件夹中初始化一个 Tauri 项目。我们可以使用以下命令:

npm init tauri@latest

复制

这个命令会询问我们一些项目相关的信息,如项目名称、描述、作者等,并创建一个 src-tauri 文件夹,其中包含了 Tauri 的配置文件和 Rust 代码。我们可以根据自己的需求修改这些文件,例如修改 tauri.conf.json 中的 distDir 为 ".",表示我们要打包的网页应用就在当前目录下。

接下来,我们可以使用以下命令来构建我们的 Tauri 应用:

npm run tauri build

复制

这个命令会编译 Rust 代码,并将网页应用打包成一个可执行文件和一些相关的资源文件。我们可以在 src-tauri/target/release/bundle/msi 文件夹中找到生成的 MSI 安装包,它的文件名类似于 json-viewer_0.1.0_x64.msi。

我们可以双击这个文件来安装我们的 Tauri 应用,并在开始菜单中找到它的图标。我们可以打开这个应用,并使用它来查看和编辑 JSON 文件,就像在网页上一样。

注意事项和配置参数

使用 Tauri 打包现成的网络应用是一个相对简单的过程,但是也有一些注意事项和配置参数需要了解。以下是一些常见的问题和解决方法:

如果你的网络应用需要访问外部的资源或 API,你需要在 tauri.conf.json 中的 allowlist 配置项中添加相应的域名或 URL,否则 Tauri 会阻止这些请求。

如果你的网络应用需要使用一些原生的功能,如文件系统、剪贴板、通知等,你需要在 tauri.conf.json 中的 tauri 配置项中启用相应的功能,并在网页中使用 Tauri 的 JS API 来调用它们。你可以参考 Tauri 的官方文档2来了解更多细节。

如果你想修改 Tauri 应用的图标、窗口大小、标题栏样式等,你可以在 tauri.conf.json 中的 window 配置项中进行设置。你也可以在 Rust 代码中使用 Tauri 的 API 来动态地修改这些属性。

如果你想为不同的平台生成不同类型的安装包,你可以在 tauri.conf.json 中的 bundle 配置项中进行设置。你也可以使用 Tauri CLI 的参数来指定要生成的目标平台和安装包类型。

总结

本文介绍了如何使用 Tauri 打包一个现成的网络应用,即一个 JSON 查看器,为 Windows 平台生成 MSI 安装包。这个过程主要包括了下载网页静态资源、验证完整性、使用 Tauri CLI 初始化和构建项目等步骤。本文也介绍了一些注意事项和配置参数,以帮助读者更好地理解和使用 Tauri。Tauri 是一个非常强大而灵活的框架,可以让开发者轻松地将任何前端框架打包成小巧、快速、安全的桌面应用。如果你对 Tauri 感兴趣,欢迎访问它的官方网站1和 GitHub 仓库3来了解更多信息。