用途:帮助开发者在 Tauri 应用中管理图标、静态资源与运行时状态。
主要能力:
- 图标:用 cargo tauri icon 从单个方形 PNG/SVG 生成各平台图标(macOS 的 icon.icns、Windows 的 icon.ico、Linux/Android/iOS 的 PNG),支持自定义源文件、输出目录与 iOS 背景色,并在 bundle.icon 中配置。
- 资源嵌入:在 bundle.resources 中用数组语法保留目录结构,或用映射语法指定目标路径;支持单文件、目录递归、非递归通配与递归通配等路径模式。
- 资源访问:Rust 侧通过 handle.path().resolve(..., BaseDirectory::Resource) 读取;JavaScript 侧用 resolveResource 与 readTextFile,并需配置 fs:allow-read-text-file、fs:allow-resource-read-recursive 等权限。
- 状态管理:用 app.manage 注册不可变或 Mutex 包裹的可变状态,在命令中通过 State 访问,也可经 AppHandle 在命令外访问;异步场景可用 Tokio Mutex,并建议用类型别名避免类型不匹配导致的运行时 panic。
使用方式:按资料中的配置与代码示例,在 tauri.conf.json 声明图标与资源,在 Rust 命令与前端调用间传递数据。
限制:资料未提供版本要求、性能数据、收费信息或完整项目搭建步骤;平台图标有透明度与尺寸要求(如 Android/iOS 不支持透明),状态类型错误会在运行时 panic 而非编译期报错。