4

一些使用 Sparkle 框架的应用程序开发人员在他们的 appcast 中保留旧版本(通过使用多个<item>标签)。

我认为如果 Sparkle 在自上次更新后发生多次更新(例如,用户从版本 4.0.0 升级到 4.0.5)时显示中间版本的发行说明,这种做法将是有意义的。然而,出于某种原因,Sparkle 并没有这样做。

那么为什么要在 appcast 中保留旧版本呢?

4

2 回答 2

6

保留旧的 appcast 项目的一个动机是支持旧的 macOS 版本,因为所需的 macOS 版本会随着时间的推移不断更新。最新项目的 a 太高,<sparkle:minimumSystemVersion>但一些较旧的项目仍然适用。然后,仍然会提示使用旧版 macOS 的用户下载其 macOS 允许的最新更新,即使它不是最新的更新。

于 2018-12-19T23:51:04.623 回答
0

您可以实现自己的版本比较机制,只需返回一个自己的SUVersionComparisonProtocol用于委托回调

- (id<SUVersionComparison>)versionComparatorForUpdater:(SUUpdater *)updater;
于 2016-03-11T14:04:24.047 回答