Macos Sparkle更新框架中的Appcast元素pubDate的目的是使更新延迟到所需的发布日期吗?

Macos Sparkle更新框架中的Appcast元素pubDate的目的是使更新延迟到所需的发布日期吗?,macos,sparkle,Macos,Sparkle,我希望appcast pubDate xml元素允许我指定,除非当前日期是发布日期(pubDate)或更高版本,否则不能考虑更新我的应用程序 下面是一个示例appcast,它在item元素中包含pubDate元素: <item> <title>Version 2.0 (2 bugs fixed; 3 new features)</title> <sparkle:releaseNotesLink>http://you.com/app/2.0.

我希望appcast pubDate xml元素允许我指定,除非当前日期是发布日期(pubDate)或更高版本,否则不能考虑更新我的应用程序

下面是一个示例appcast,它在item元素中包含pubDate元素:

<item>
  <title>Version 2.0 (2 bugs fixed; 3 new features)</title>
  <sparkle:releaseNotesLink>http://you.com/app/2.0.html</sparkle:releaseNotesLink>
  <pubDate>Wed, 09 Jan 2006 19:20:11 +0000</pubDate>
  <enclosure url="http://you.com/app/Your Great App 2.0.zip" sparkle:version="2.0" length="1623481" type="application/octet-stream" sparkle:dsaSignature="BAFJW4B6B1K1JyW30nbkBwainOzrN6EQuAh" />
</item>

版本2.0(修复了2个错误;3个新功能)
http://you.com/app/2.0.html
2006年1月9日星期三19:20:11+0000
这是从Sparkle的网站复制的:

所以顺序是这样的:

  • 周一,我将更新后的应用程序(myapp v1.1)复制到我的更新web服务器
  • 在我的更新服务器上,我还将pubDate设置为星期三(采用正确的RFC 822格式)
  • 周二,有人运行myapp v1.0,并尝试使用myapp v1.0中捆绑的sparkle appcast将myapp更新到任何可用的版本
  • 在这一点上,sparkle比较了版本,并认为应该进行更新,但现在还是星期二,因此sparkle在星期三(或更晚)再次尝试之前,不会给出更新选项
  • 星期三到了,用户试图再次更新myapp v1.0,这一次它起作用了,因为版本是可更新的,日期是星期三
  • 这就是pubDate Sparkle元素的目的吗

    Sparkle是否使用pubDate来帮助确定除了版本号之外是否还应该进行更新

    我希望在某个日期之前停止更新应用程序,但我发现pubDate似乎并不适合我


    我在Sparkle文档中找不到关于pubDate用途的引用:

    正如您所知,Sparkle使用RSS在附件标签中列出应用程序更新(这就是他们所谓的“应用程序播送”-请参阅:)

    pubDate元素不是Sparkle特有的-它只是RSS规范的一部分(请参阅),一般RSS阅读器可能/应该使用它按时间顺序显示项目/条目

    就我所知,Sparkle对pubDate只做了一件事,那就是排序更新候选项()

    现在,您可以通过子类化SUUpdater:see,特别是
    bestValidUpdateInAppcast
    方法,进一步定制Sparkle选择合格更新的方式:

    在那里,您应该能够进一步处理项目并实现您心目中的行为