FluxDown 自动更新 — 5 秒后台查 GitHub Releases
默认行为
FluxDown 桌面端启动 5 秒后,后台静默查 GitHub Releases 的最新版本号(对比本地版本)。有新版本:
- 弹出更新对话框,显示 changelog。
- 两个按钮:「立即更新」和「稍后提醒」。
- 点「立即更新」→ 下载新版安装包(安装版下载新版 exe、便携版下载新版 zip)→ 退出 → 安装/解压 → 重启。
更新过程不丢任何下载记录和设置——SQLite 数据库在新版本启动时自动迁移 schema(如果需要)。
在哪调
桌面端:设置 → 关于 → 自动检查更新(开关)。手动检查:同一页的「检查更新」按钮,或左下角版本指示器点击。
检查频率
- 默认:启动时查一次。
- 关了「自动检查」后,只能手动触发。
- 后台没有定时循环检查——这是有意设计:下载器不是浏览器,不需要每天盯着更新;启动时查一次足够。
更新方式
| 安装方式 | 更新行为 |
|---|---|
| Inno Setup 安装版 | 下载新版 setup.exe → 运行安装器覆盖安装(不丢数据) |
| 便携版(zip) | 下载新版 zip → 解压到当前目录(覆盖可执行文件,保留 data/) |
| Scoop | 不用 FluxDown 自己更,scoop update fluxdown |
| Docker Server | docker pull + 重启容器 |
| Synology .spk | DSM Package Center 自动提示更新 |
| Android APK | 手动下载安装或 GitHub Release APK 自动更新器 |
更新失败怎么办
更新过程可能失败的场景:
- 下载中断 — FluxDown 提示更新失败,当前版本继续正常工作;下次启动会再次检查。
- 旧版本路径冲突 — 安装版遇到之前以管理员权限装的「所有用户」版本,会提示一次管理员权限迁移。
- 便携版多开 — 更新时不要同时启动两个 FluxDown 便携实例,否则文件可能被锁。
版本号规则
FluxDown 用语义化版本(SemVer):v<major>.<minor>.<patch>。
- patch 升级(0.1.53 → 0.1.54)— bug fix,应该无破坏性。
- minor 升级(0.1.x → 0.2.0)— 有新功能、可能有小 breaking change,阅读 changelog。
- major 升级(0.x → 1.0.0)— 重大架构变化,升级前建议备份 SQLite 数据库。
SQLite 迁移
新版本如果改了数据库 schema,首次启动时自动迁移:
- 把
fluxdown.db复制一份做备份(fluxdown.db.backup-<timestamp>)。 - 执行 migration 脚本升级 schema。
- 迁移成功后保留备份文件(手动删)。
- 迁移失败 → 新版本拒绝启动,提示恢复备份。