设置存储

版本化偏好、可搜索设置、备份与 OS keychain 存储。

src/lib/settings/ 通过 tauri-plugin-store 管理版本化 settings.json。与 Electron 不同,schema、迁移和持久化逻辑在 TypeScript 中,无需 IPC hop。原生构建中它位于 Tauri app-config 目录:通常是 macOS 的 ~/Library/Application Support/<app>、Windows 的 %APPDATA%\\<app>、Linux 的 ~/.config/<app>

Zod 会验证每次读取和写入。当前 CURRENT_SETTINGS_VERSION 为 10,forward migration 为新字段填入默认值;无效或版本更新的数据会回退到安全默认值。更新会触发类型化 settings-changed event,TypeScript 托盘和 updater scheduler 会消费它。

设置中心与备份

设置页有 8 个标签:通用、外观、通知、快捷键、代理、存储、更新、高级。账户独立在 /account;auto-update build flag 关闭时“更新”会消失。?tab=appearance 可选定标签; SettingsSearch 会搜索翻译后的标签、描述和关键词。

“存储”页使用原生 dialog/fs plugins 导入导出经 Zod 验证的 JSON。备份包含偏好及存在的 secure key 名称,从不包含 token/session/license 值;新设备需要重新登录。

secure 值由 Rust keyring 和 OS keychain 保存,并受 SecureKey enum 限制。错误为 ENCRYPTION_UNAVAILABLESTORAGE_FAILURE,不会降级为明文。未签名 macOS dev build 可能提示 keychain 访问。

On this page