seal 中文文档 下载 App

签名冲突覆盖安装 — F-Droid 版 vs GitHub 版 Seal 不能互相覆盖

问题表现

如果你已经装了 F-Droid 版的 Seal,再用 GitHub 版的 APK 直接覆盖安装时,会弹出:

应用未安装

现有的同名应用与你正在尝试安装的应用使用了不同的证书。

或者反过来,GitHub 版已装,F-Droid 版无法覆盖。

原因

F-Droid 版和 GitHub 版是两个不同的签名者构建的:

渠道签名者构建方式
F-DroidF-Droid 官方用公开的 source tarball 在 F-Droid CI 里重新构建并签名
GitHubJunkFood02(开发者本人)开发者用自己的签名密钥构建 Release APK

安卓系统要求:同一个包名(com.junkfood.seal)的两个 APK,必须签名者完全相同才能覆盖安装。两个渠道签名不同,所以互相之间只能先卸载再装。

正确做法

步骤一:导出下载历史(重要)

卸载旧版本会清除应用数据目录——里面包含你的下载历史、Cookie 数据库、自定义命令模板等。卸载前务必先导出下载历史:

  1. 打开 Seal → 下载记录页面
  2. 找到"导出历史"入口(v1.12.0 起)
  3. 选择"完整备份"导出 JSON 文件,存到安全位置(比如网盘或电脑)

步骤二:卸载旧版

从系统设置 → 应用 → Seal → 卸载。或者长按桌面图标拖到卸载按钮。

步骤三:安装新版本

用新渠道的 APK 或 F-Droid 客户端安装。

步骤四:(可选)导入历史

新版本安装好后,从下载记录页面找到"导入历史",选择之前导出的 JSON 文件恢复记录。

能不能两个版本并存

安卓允许同一个应用的两个版本并存但需要用不同的签名 + 不同的应用 ID。Seal v2.0 alpha 预览版就是这么做的——使用不同的数据目录,所以可以和稳定版并存安装。

但 F-Droid 版和 GitHub 版包名都是 com.junkfood.seal,不能并存。如果真的想同时装两个渠道的版本看差异,只能靠 v2.0 预览版(数据目录隔离)或用应用分身(但分身出来的 Seal 还是同一个包名,可能也会冲突)。

哪个渠道更好

渠道优点缺点
F-Droid自动更新、签名可信、隐私审计过更新可能比 GitHub Release 慢几周
GitHub版本最新、Release 说明详细手动更新、需要自己信开发者签名

两个渠道都值得信任——F-Droid 有严格的可重建性审计,GitHub Release 是开发者本人发的。选哪个主要看你习惯用哪个更新通道。

继续到 yt-dlp 更新损坏:bad local file header 或 解析失败怎么办。