“如果结果不如你所愿,就在尘埃落定前奋力一搏。”——《夏目友人帐》
“有些事不是看到了希望才去坚持,而是因为坚持才会看到希望。”——《十宗罪》
“维持现状意味着空耗你的努力和生命。”——纪伯伦
第一节 应用特性介绍
一. 前言
本章开始我们将进入auri项目的实战编程部分,在这一章节中,我们将了解Tauri为我们提供的内置功能和特性,学习Tauri插件的使用方式及研发流程。
这一章节的内容需要前四章节的内容作为基础,内容设计一些编程内容,代码篇幅会比较多,我会结合实际工作情况讲解代码的核心内容和注意事项,以便大家今后的学习和交流。
二. 特性
Tauri 为我们的应用开发提供了一些内置功能和特性,它们为:
- HTTP客户端:使用Rust编写的HTTP客户端,这是我们实现访问服务端编程的方式。
- Localhost: 在生产环境中使用Localhost服务器,(不常用);
- Shell: 访问系统Shell.
- SQL:在前端通过SQLX与sql数据库进行通信;
- store:数据持久 键值存储;
- StrongHold: 数据库
- WebSocket: WebSocket链接
- upload: 封装的HTTP上传功能;
- 命令机制
- 全局快捷方式:注册全局快捷方式
- 剪切板: 读取和写入系统剪贴板
- single单例: 确保只运行一个应用程序实例;
- CLI: 从命令行解析参数
- 定位器:
- 对话框:本机系统对话框,保存文件和消息处理
- 持久化作用域:将运行时作用域持久化到文件系统
- os:操作系统信息
- log:日志记录
- 条形码扫描
- 深度链接
- window:窗口管理
- 自动启动:在系统启动时候启动用用程序
- 进程:访问当前进程
- 通知提示:发送本地通知给用户
- Updater:应用更新
三. 特性支持表
插件 | Rust Version | android | ios | linux | macos | windows |
---|---|---|---|---|---|---|
autostart | 1.77.2 | x | x | v | v | v |
barcode-scanner | 1.77.2 | v | v | x | x | x |
biometric | 1.77.2 | v | v | x | x | x |
cli | 1.77.2 | x | x | v | v | v |
clipboard-manager | 1.77.2 | v * | v* | v | v | v |
deep-link | 1.77.2 | v * | v* | v | v* | v |
dialog | 1.77.2 | v* | v * | v | v | v |
fs | 1.77.2 | v * | v* | v* | v * | v* |
geolocation | 1.77.2 | v | v | x | x | x |
global-shortcut | 1.77.2 | x | x | v | v | v |
haptics | 1.77.2 | v | v | x | x | x |
http | 1.77.2 | v | v | v | v | v |
localhost | 1.77.2 | x | x | v | v | v |
log | 1.77.2 | - | - | v | v | v |
nfc | 1.77.2 | v | v | x | x | x |
notification | 1.77.2 | v | v | v | v | *v |
opener | 1.77.2 | v * | v* | v | v | v |
os | 1.77.2 | v | v | v | v | v |
persisted-scope | 1.77.2 | v | v | v | v | v |
positioner | 1.77.2 | x | x | v | v | v |
process | 1.77.2 | x | x | v | v | v |
shell | 1.77.2 | v * | v * | v | v | v |
single-instance | 1.77.2 | x | x | v | v | v |
sql | 1.77.2 | v | v | v | v | v |
store | 1.77.2 | v | v | v | v | v |
stronghold | 1.77.2 | v | v | v | v | v |
updater | 1.77.2 | x | x | v | v | v |
upload | 1.77.2 | v | v | v | v | v |
websocket | 1.77.2 | v | v | v | v | v |
window-state | 1.77.2 | x | x | v | v | v |
system-tray | 1.77.2 | x | x | v | v | v |
window-customization | 1.77.2 | x | x | v | v | v |
四. 社区插件
- tauri-plugin-graphql: graphql的安全IPC操作
- tauri-plugin-clipboard:前铁板操作
- tauri-plugin-context-menu 上下文菜单
- tauri-plugin-fs-pro 文件操作
- tauri-plugin-network: 网络操作信息展示以及扫描
- tauri-plugin-pinia
- tauri-plugin-system-info
- tauri-plugin-theme
- tauri-nspanel 将窗口转化为面板
五. 集成扩展
- axios-tauri-adapter: @tauri-apps/api/http 模块的axios适配器
- axios-tauri-api-adapter: @tauri-apps/api/http 模块的axios适配器
- tauri-update-server:自动将Tauri更新程序与git存储库版本连接起来
- vite-plugin-tauri
下面的章节我们将围绕以上内容详细了解它们在系统的使用方式以及注意事项。