【问题标题】:Update .app using Sparkle with a different bundle-identifier使用具有不同捆绑标识符的 Sparkle 更新 .app
【发布时间】:2013-12-05 06:24:39
【问题描述】:

我正在使用Sparkle 将应用程序从0.9.2 更新为1.0.0

在新的更新中,我将MyApp.appCFBundleIdentifiercom.MyCompany.MyApp改为au.com.MyCompany.MyApp

当我测试下载此更新(通过 MyApp.app 内置的 Sparkle)时,它会下载更新,然后给我一个显示此消息的窗口:

提取存档时出错。请稍后再试。

除了让用户重新安装应用程序之外,还有其他方法可以让 Sparkle 识别旧的 CFBundleIdentifier 并将其更新为新的吗?

【问题讨论】:

  • 还没有,AFAIK 没有发布修复。唯一可行的解​​决方法(这不是最好的)是包含一条消息并链接到旧应用程序以重新下载您的软件(通过使用旧标识符的更新,或者通过某种全球消息系统,如果您有一个)。之后,继续您的更改,并使用新的CFBundleIdentifier 构建您的应用程序。我猜出于安全原因,您无法将应用程序更新为新的捆绑包标识符 - 我不希望它会很快实现,如果有的话。

标签: macos sparkle bundle-identifier


【解决方案1】:

如果您使用.dmg 进行更新,则无法更改标识符。

带有 DSA 签名的.zip 可能有效。

如果您使用.pkg(或.sparkle_guided.pkg)提供更新,您可以做任何您想做的事情。

【讨论】:

  • 刚刚用 Sparkle 1.21.3 尝试过 - 不起作用(不再)。
猜你喜欢
  • 1970-01-01
  • 2016-07-12
  • 2019-06-29
  • 2019-05-28
  • 1970-01-01
  • 2012-04-10
  • 2015-12-24
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多