Rust GUI框架 tauri V2 项目创建

devtools/2024/9/21 11:04:59/

文章目录

  • Tauri 2.0
  • 创建应用
  • 文档
  • 移动应用开发 Android 前置要求
  • 移动应用开发 iOS 前置要求
  • 参考资料

Tauri 2.0

Tauri 是一个构建适用于所有主流桌面和移动平台的轻快二进制文件的框架。开发者们可以集成任何用于创建用户界面的可以被编译成 HTML、JavaScript 和 CSS 的前端框架,同时可以在必要时使用 Rust、Swift 和 Kotlin 等语言编写后端逻辑。

你可以使用下面的任意一个命令以利用 create-tauri-app 创建一个新的项目。请务必参考前置要求文档安装所有 Tauri 必须的依赖,并阅读前端配置指南了解推荐的前端配置方案。

在你成功创建了你的第一个应用后,你可以在功能及秘诀列表探索 Tauri 的不同功能及秘诀。

为什么选用 Tauri

对于开发者而言,Tauri 有三个主要优势:

  • 构建应用所需的可靠基础
  • 使用系统原生 webview(网页视图)带来的更小打包体积
  • 使用任何前端技术和多种语言绑定带来的灵活性

可靠的基础

由于 Tauri 是使用 Rust 构建的,它可以利用 Rust 提供的内存、线程和类型安全方面的优势。而使用 Tauri 开发的应用也可以从中受益,甚至无需由 Rust 专家开发这些应用。

更小的体积

Tauri 利用了已经存在于每一个用户系统的 webview。Tauri 应用中只包含了该应用专属的代码和资源文件,不需要在每个应用中都打包一个浏览器引擎,这意味着一个最小化的 Tauri 应用体积可能小于 600KB。

灵活的架构

由于 Tauri 使用了 web 技术,这也意味着几乎所有的前端框架都与 Tauri 兼容。

创建应用

本文使用pnpm命,令创建应用

pnpm create tauri-app --rc

没有pnpm命令,可以使用npm install -g pnpm安装

请跟随提示选择您的项目名称、前端语言、包管理器以及前端框架。

输出如下

$ pnpm create tauri-app --rc
.../191-220         |   +2 +
.../191-220         | Progress: resolved 12, reused 0, downloaded 2, added 2, done
✔ Project name · tauri-app
✔ Identifier · com.gitcode.tauri-app-002
✔ Choose which language to use for your frontend · TypeScript / JavaScript - (pnpm, yarn, npm, bun)
✔ Choose your package manager · pnpm
✔ Choose your UI template · Vanilla
✔ Choose your UI flavor · JavaScriptTemplate created! To get started run:cd tauri-apppnpm installpnpm tauri android initFor Desktop development, run:pnpm tauri devFor Android development, run:pnpm tauri android dev

在这里插入图片描述
在 create-tauri-app 创建完项目后,您可以进入项目文件夹,安装依赖,然后使用 Tauri CLI 启动开发服务器:

cd tauri-app
pnpm install
pnpm tauri dev

您将会看到一个新的窗口被打开,该窗口正在运行您的应用。

恭喜您!您已经创建了您自己的 Tauri 应用!🚀

文档

tauri2.0
tauri2.0 android
tauri2.0 ios

移动应用开发 Android 前置要求

使用 Android Studio 中的 SDK Manager 安装以下内容:

  • Android SDK Platform
  • Android SDK Platform-Tools
  • NDK (Side by side)
  • Android SDK Build-Tools
  • Android SDK Command-line Tools

在这里插入图片描述
在这里插入图片描述

  • 配置 ANDROID_HOMENDK_HOME 环境变量
# 设置 SDK 目录的路径
ANDROID_HOME------D:\android_sdk
# 设置 NDK 目录的路径
NDK_HOME----------D:\android_sdk\ndk\27.1.12297006

其它环境变量(可选)

# 设置 SDK 安装目录的路径
ANDROID_HOME------------D:\android_sdk
# 用户数据
ANDROID_USER_HOME-------D:\android_data
# 用户数据---模拟器相关
ANDROID_EMULATOR_HOME---D:\android_data
ANDROID_AVD_HOME--------D:\android_data\avd
  • 使用 rustup 添加 Android 编译目标:
rustup target add aarch64-linux-android armv7-linux-androideabi \i686-linux-android x86_64-linux-android

移动应用开发 iOS 前置要求

仅 macOS
iOS 开发需要 Xcode,并且仅在 macOS 上可用。确保你在 macOS 系统依赖项部分中安装了 Xcode 而不是 Xcode 命令行工具。

  1. 在终端中使用 rustup 将 iOS 添加为编译目标:

Terminal window

rustup target add aarch64-apple-ios x86_64-apple-ios aarch64-apple-ios-sim
  1. 安装 Homebrew:

Terminal window

/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
  1. 使用 Homebrew 安装 Cocoapods:

Terminal window

brew install cocoapods

下一步:创建新项目。

pnpm create tauri-app --rc

参考资料

Android Studio 2024 安装、项目创建、加速、优化、 环境变量参数说明
Rust GUI框架Tauri V1 入门 Git管理
如何上传tauri项目到csdn gitcode


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

相关文章

【C++掌中宝】深入解析C++命名空间:有效管理代码的利器

文章目录 前言1. namespace 的价值2. namespace 的定义3. 命名空间的本质4. 嵌套的命名空间5. 命名空间的使用6. using 指令7. 补充结语 前言 假设这样一种情况,当一个班上有两个名叫 Zara 的学生时,为了明确区分它们,我们在使用名字之外&am…

linux 基础知识 什么是僵尸进程?有什么影响?如何解决?

linux 系统僵尸进程 在Linux系统中,僵尸进程(Zombie Process)是一种特殊的进程状态,它指的是一个已经完成执行的进程,其父进程尚未通过wait()或waitpid()系统调用来回收其资源和状态信息。 僵尸进程本身并不占用CPU和…

Java Spring Validation:自动与手动校验

在现代的Java应用开发中,数据验证是一个不可或缺的部分。它确保了数据的一致性和正确性,从而减少了程序运行时错误的可能性。Spring框架提供了一个强大的工具集来帮助开发者实现这一目标,其中Spring Validation是处理输入数据校验的一个重要组…

Unity教程(十六)敌人攻击状态的实现

Unity开发2D类银河恶魔城游戏学习笔记 Unity教程(零)Unity和VS的使用相关内容 Unity教程(一)开始学习状态机 Unity教程(二)角色移动的实现 Unity教程(三)角色跳跃的实现 Unity教程&…

PyTorch使用------自动微分模块

目录 🍔 梯度基本计算 1.1 单标量梯度的计算 1.2 单向量梯度的计算 1.3 多标量梯度计算 1.4 多向量梯度计算 1.5 运行结果💯 🍔 控制梯度计算 2.1 控制不计算梯度 2.2 注意: 累计梯度 2.3 梯度下降优化最优解 2.4 运行结果&#x1…

Spring MVC 基础 : 文件、cookies的接收 ,REST响应

一、接受文件 在 Spring MVC 中,可以使用 RequestPart 注解来接收文件。这个注解常用于处理复杂的请求,如同时发送 JSON 数据和文件。RequestPart 非常适用于多部分请求(multipart requests),这在单个请求中同时发送文…

spring boot admin集成,springboot2.x集成监控

服务端&#xff1a; 1. 新建monitor服务 pom依赖 <!-- 注意这些只是pom的核心东西&#xff0c;不是完整的pom.xml内容&#xff0c;不能直接使用&#xff0c;仅供参考使用 --><packaging>jar</packaging><dependencies><dependency><groupId&g…

HarmonyOS开发实战( Beta5.0)橡皮擦案例实践详解

鸿蒙HarmonyOS开发往期必看&#xff1a; HarmonyOS NEXT应用开发性能实践总结 最新版&#xff01;“非常详细的” 鸿蒙HarmonyOS Next应用开发学习路线&#xff01;&#xff08;从零基础入门到精通&#xff09; 介绍 本示例通过ohos.graphics.drawing库和blendMode颜色混合实…