我使用Sparkle为我的应用程序提供更新 .
这个过程非常简单和基本:应用程序的更新是压缩的,XML appcast为Sparkle提供了zip的URL .
所有工作都按预期工作,Sparkle宣传更新,一旦我点击安装它,下载,解压缩存档,并要求安装和重新启动 .
有一个问题:重新启动后,应用程序不是活动的(最重要的?),即:应用程序由“finish_installation”工具(重新)启动,但保留在应用程序堆栈的底部 .
从Sparkle更新的其他应用程序的行为来看,这不是正常行为,并且系统正常地将应用程序正确地放在正常的经典启动上 .
如果重要,我运行Mac OS X 10.9.1和Xcode 5.0.2,该应用程序是基于文档的 .
我确实注意到系统日志中有一条消息,说zip导入器遇到错误(2)解析用于更新的存档,但我怀疑这可能是问题的根源 .
有人观察过这种行为吗?即使是非更新配置?任何帮助表示赞赏 .
1 回答
我没有在我的应用上观察到这种行为 . 但是应该可以通过在app委托的
awakeFromNib
或applicationDidFinishLaunching:
方法中添加[NSApp activateIgnoringOtherApps:YES];
来轻松修复 .如果您只希望应用程序在“finish_installation”启动时激活,那么您是否可以检查应用程序父进程的名称?