我有一个Cocoa应用程序,我已经更改了名称。我正在使用优秀的Sparkle Framework(http://sparkle-project.org)为我的用户提供更新。
不幸的是,Sparkle似乎不支持开箱即用的应用程序名称更改。我希望有一些黑客攻击,以便我可以为已经拥有应用程序的用户提供新命名版本的更新。
答案 0 :(得分:4)
我不确定只使用vanilla Sparkle框架是否可行。原因是应用程序的文件名可能与Info.plist中定义的CFBundleName
不同。 Sparkle需要确保它正在更新正确的文件系统结构,无论它的名称是什么。
考虑以下情况:
Adium.app
为CFBundleName
的{{1}}。Adium
。Instant Messenger.app
,CFBundleName仍为Instant Messenger.app
。您可以希望菜单栏中的应用程序名称已更改这一事实将提示用户自行重命名,或者您可以在应用程序启动时拉出一些技巧来退出应用程序,重命名并重新启动如果满足某些标准。我不建议使用后者,用户不喜欢申请决定未经许可自行移动。