我在Mac App Store中有一个应用程序。我正在尝试支持用户回到Snow Leopard,但这变得越来越困难。
最近我遇到了一个障碍,由于iTunesLibrary.framework,这个框架必须链接到主要的可执行文件,但这样做总是会在雪豹运行时触发加载崩溃。
为了解决这个问题,我想编译我的应用程序的一个版本,它不使用OSX的新版本中的功能和框架。问题是,我如何自动启动兼容性构建?
我正在考虑让主可执行文件指向shell脚本,但我真的不喜欢这个想法。我还认为主要的可执行文件是一个帮助器,它只是启动整个应用程序,然后退出。我预计这会起作用,但我担心它会得到苹果的批准。最后,我想知道应用程序捆绑格式本身是否可以支持这种设置,也许是通过我不知道的CFBundleExecutable的高级用法。
有人沿着这条路走过吗,你有什么建议?
发布于 2014-03-28 21:07:09
尝试弱链接的框架,更多关于Weak Linking and Apple Frameworks here的信息。然后,还要检查任何NSObject的操作系统版本或- (BOOL)respondsToSelector:(SEL)aSelector的代码,以确定您可以调用什么,不可以调用什么。
要让Snow Leopard作为基础SDK,你需要一个旧的Xcode,并且在提交到Mac应用商店时会遇到麻烦。
https://stackoverflow.com/questions/22695164
复制相似问题