从GitHub发布的F-Droid应用程序会在F-Droid服务器中自动更新吗



我在F-Droid中发布了一个应用程序。在发布第一个版本时,我遵循了通常的步骤,该应用程序是从我的GitHub发布的。(发布标签为v1.0(。

现在,我在GitHub中发布了该应用程序的更新(发布标签为v1.x(。我想知道我是否需要更改F-Droid元数据中的任何内容,并在F-Droid数据存储库中再次创建一个新的合并请求。

这是我的应用程序的元数据yml:

Categories:
- Science & Education
License: BSD-3-Clause
AuthorName: ARITRA BELEL and SHOURYA S GHOSH
SourceCode: https://github.com/belelaritra/Neumorphic_Calculator
IssueTracker: https://github.com/belelaritra/Neumorphic_Calculator/issues
AutoName: Calculator
RepoType: git
Repo: https://github.com/belelaritra/Neumorphic_Calculator
Builds:
- versionName: 1.0.0
versionCode: 1
commit: b0ea287db768c146925b7df4853abe10286b8026
output: build/app/outputs/flutter-apk/app-release.apk
srclibs:
- flutter@2.8.1
rm:
- ios
build:
- $$flutter$$/bin/flutter config --no-analytics
- $$flutter$$/bin/flutter packages pub get
- $$flutter$$/bin/flutter build apk
AutoUpdateMode: Version %v
UpdateCheckMode: Tags
UpdateCheckData: pubspec.yaml|version:s.*+(d+)|.|version:s(.*)+
CurrentVersion: 1.0.0
CurrentVersionCode: 1

线路,

AutoUpdateMode: Version %v
UpdateCheckMode: Tags

确实引起了我的注意。模式似乎设置为自动更新。但最后两行实际上让我感到困惑,因为CurrentVersionCurrentVersionCode已经设置好了。如果我不更新,即使自动更新模式设置为true,我的应用程序是否会在存储库中自动更新

注意:我已经在发布中更新了项目中的版本名称和版本代码。现在版本名称为1.1.0,版本代码为2

你不需要告诉F-Droid更新你的应用程序-它会自动更新:

更新时需要告诉您吗?

我们将检测您的应用程序的新版本,并相应地更新我们的元数据,然后我们将检查代码并向系统添加新版本。标签对添加新版本有很大帮助,但请记住每次都要将标签推送到原始repo。当然,如果你把源代码转移到另一个网站,你应该告诉我们。当AndroidManifest.xml被移动时,目前在检测新版本方面存在一些问题,所以如果有紧急情况,你可以告诉我们是否发生了这种情况。

一些应用程序开发人员在发布时向我们提交合并请求以及所有相关的构建数据。你不需要这样做,但它可以加快速度。从历史上看,作为一个小型社区项目,我们处理更新的速度比我们希望的要慢,但这种情况一直在改善。

我们的更新检查是愚蠢的,只会抓取构建文件:我们不运行任何构建代码,因此在构建时不要使用基于时间的版本控制或任何其他类型的版本计算(例如,将它们移到多个子版本,这些子版本在构建时连接在一起,甚至需要复杂的函数调用来实现这一点(。

我发布了一个新版本。为什么它不在存储库中?

当我们检测到一个新版本时,可能需要几天时间才能将其放入存储库,因为构建过程每天只运行一次。在生成完成之前,应用程序的wiki页面会将其列在:类别:要更新的应用程序中。只要Versions(版本(下的文字"the current(recommended(version is xxx(version code yyy("(当前(推荐(版本为xxx(版本代码yyy((显示与您的最新版本相对应的版本号,我们就会检测到它,APK应该很快就会可用。只要给它一些时间。

关于元数据中的CurrentVersionCurrentVersionCode值,我的理解是F-Droid的更新脚本会自动将它们更新为当前值:

F-Droid工具可以自动检测和构建应用程序和包的更新。

检测

有各种机制可以自动检测应用程序是否有可用的更新,元数据中的UpdateCheckMode字段可以确定特定应用程序使用的方法。

运行fdroid checkupdates命令将此方法应用于存储库中的每个应用程序,并相应地更新元数据中的CurrentVersion和CurrentVersionCode字段。

最新更新