Skip to content

常见问题 FAQ

安装与启动

Q: npm install 报错?

确认 Node.js 版本 >= 18。运行 node -v 检查。如果版本过低,使用 nvm 升级:

bash
nvm install 18
nvm use 18

Q: npm run dev:h5 启动后白屏?

检查浏览器 DevTools Console。常见原因:

  1. SCSS 编译错误 — 查看终端日志,修复 SCSS 语法问题
  2. COOP/COEP 头缺失 — 确保使用 npm run dev:h5 启动(不要直接用 vite 命令),vite.config.ts 已自动配置跨域隔离头

Q: TypeScript 报 "找不到模块 @/xxx"?

tsconfig.json 已配置 @/src/ 路径映射。如果 VS Code 仍然报错,尝试:

bash
# 重启 TypeScript 服务
Cmd+Shift+P TypeScript: Restart TS Server

加密与安全

Q: 忘记加密密码怎么办?

无法恢复。密码是数据的唯一解密密钥,系统不存储密码本身。唯一恢复途径:

  1. 如果你之前导出过备份文件(.json 格式的加密密文)
  2. 使用"合并旧数据"功能,输入旧密码解密备份,再用新密码重新加密

强烈建议:设置密码后用纸笔记下,或使用密码管理器保存。

Q: 为什么 App 后台一段时间后需要重新输入密码?

这是自动锁屏功能。可在 设置 → 锁屏设置 中调整自动锁定时间(1/5/15/30/60 分钟),或关闭自动锁屏。

Q: 生物认证解锁失败怎么办?

  1. 确认设备已录入指纹/面容
  2. 确认已在 设置 → 加密设置 中开启生物解锁
  3. 重启 App 后重试
  4. 如果持续失败,使用密码解锁后重新开启生物认证

Q: 数据真的安全吗?服务端能看到我的数据吗?

不能。采用零知识架构:

  • 加密密钥由你的密码通过 PBKDF2 派生,只有你知道密码
  • 数据在写入数据库前已完成 AES-256-GCM 加密
  • 同步到云端的数据是加密密文,服务端无法解密
  • 生物认证仅在本地 Keychain/Keystore 中存储,不会上传

AI 功能

Q: 端侧 AI 和云端 AI 有什么区别?

端侧 AI云端 AI
运行位置设备本地远程服务器
网络要求不需要需要
模型大小350MB - 2.2GBN/A
响应速度取决于设备性能取决于网络
智能程度基础更强
隐私数据不出设备发送到服务端

Q: 如何下载端侧 AI 模型?

设置 → AI 设置 → 端侧模型 → 选择模型 → 下载。

  • H5 端:模型下载到浏览器 IndexedDB(约 350MB-600MB)
  • App 端:模型下载到应用私有目录(GGUF 格式)

Q: 端侧 AI 速度慢怎么办?

  1. 选择更小的模型(如 Qwen2.5-0.5B 仅 350MB)
  2. App 端会自动利用 GPU(Metal/Vulkan)加速
  3. H5 端受 WebAssembly 性能限制,建议使用云端 AI

Q: AI 对话中 [ACTION] 是什么?

当 AI 需要操作你的数据时,会在回复中插入 [ACTION] 块。这些块会被系统自动解析并执行,例如创建任务、记录心情等。无需手动处理。

数据与同步

Q: 如何备份数据?

两种方式:

  1. 本地备份:我的 → 数据管理 → 导出备份 → 保存 JSON 文件到本地
  2. 云端同步:我的 → 数据同步 → 配置 WebDAV / GitHub Gist → 上传

Q: 换手机怎么迁移数据?

  1. 旧手机:数据管理 → 导出备份 → 保存文件到新手机
  2. 新手机:安装爱生活 → 设置加密密码 → 数据管理 → 导入恢复
  3. 如果使用云端同步:新手机配置同样的同步服务 → 下载

Q: WebDAV 同步配置后报错?

常见原因:

  • URL 格式错误:坚果云地址应为 https://dav.jianguoyun.com/dav/(注意末尾 /
  • 密码使用了第三方应用密码:坚果云需要使用"第三方应用管理"中生成的专用密码,而非登录密码
  • H5 端 CORS 错误:开发模式下通过 localhost:9399 代理,生产模式需服务器 CORS 配置

Q: 同步会覆盖我的数据吗?

会上传本地数据到云端,同时下载云端数据到本地。如果两端都有修改,系统会检测冲突(通过 version 字段),提示用户选择保留哪个版本。

平台相关

Q: H5 和 App 版本有什么区别?

功能H5App
生物认证不支持支持
截图保护不支持支持 (iOS)
AI 推理Transformers.jsLlama.cpp
数据库IndexedDBSQLite
后台锁屏页面可见性原生事件

Q: iOS 上架需要什么?

  1. Apple Developer 账号($99/年)
  2. 发布证书(.p12)和描述文件(.mobileprovision)
  3. App Store Connect 应用信息(描述、截图、隐私标签)
  4. 详见 部署与发布指南

开发相关

Q: 如何新增一个功能模块?

参见 开发指南 - 新增功能模块指南,包含 6 步完整流程。

Q: VitePress 文档构建报错 "Element is missing end tag"?

这是 Markdown 中的 < > 字符被 Vue 编译器误解析为 HTML 标签。使用 HTML 实体替换:

  • <&#60;
  • >&#62;

仅在代码块之外的 prose 文本中需要替换,代码块内不受影响。

Q: 如何在真机上调试?

  • Android:USB 连接 → 开启开发者选项 → adb logcat | grep -i "lifeos"
  • iOS:Xcode → Window → Devices and Simulators → 查看日志
  • HBuilderX:运行 → 运行到手机或模拟器 → 内置调试器