SuperAPI AI 工具集

tauri-impl-plugin-development

编程与开发

查看项目

更新于 10-15 22:18

技能介绍

用途:指导在 Tauri 2 中构建自定义插件,包括添加生命周期钩子、定义插件权限与注册插件命令。

主要能力:介绍插件 Builder API(Builder::new、invoke_handler、setup、on_event、on_navigation、on_webview_ready、on_drop、build);前端通过 plugin:<name>|<command> 前缀调用命令;用 build.rs 自动生成 allow/deny 权限;支持插件状态管理与从 tauri.conf.json 的 plugins.<name> 读取配置;提供命令级与全局作用域(CommandScope、GlobalScope)用法。

使用方式:插件初始化函数返回 TauriPlugin<R>(带配置时为 TauriPlugin<R, C>),在应用 Builder 上用 .plugin() 注册;插件命令函数必须带 <R: Runtime> 泛型;状态用 app.manage() 在插件 setup 钩子中注册;独立插件 crate 需在 build.rs 中声明 COMMANDS 并调用 tauri_plugin::Builder::new(COMMANDS).build(),再在 capability 文件中引用生成的权限。

适用场景:开发可复用的 Tauri 2 插件、需要生命周期钩子或细粒度权限控制的桌面应用。

限制与注意:应用 Builder 上多次调用 .invoke_handler() 只有最后一次生效;插件命令必须使用 <R: Runtime> 保持运行时无关;不得在应用 Builder 上注册插件状态;跳过 build.rs 权限生成会导致运行时“command not allowed”;前端调用必须使用 plugin:<name>|<command> 前缀。资料未提供具体版本兼容范围与收费信息。