我已经在Lion上开发了一个Cocoa App,现在我想增加与Leopard和Snow Leopard的兼容性。

我试图将开发目标设置为10.5,但在Leopard和Snow Leopard上仍然存在崩溃问题。

我也尝试使用旧版本的Xcode打开该项目,但是遇到了数百个编译错误(我想这是因为我无法使用旧的Mac OS SDK来编译该程序)

您对解决Cocoa Apps的追溯兼容性问题有任何建议吗?

最佳答案

我认为开发最新的操作系统,然后在最后一刻尝试支持较旧的操作系统通常不是一个好主意。如果您使用的操作系统中引入的API比您想支持的最早的API要晚,则必须重写代码以避免使用这些API。通常不值得麻烦。

话虽如此,支持较旧的操作系统并不是秘密。您只需要确保只使用要支持的最旧操作系统上可用的API(类,方法,函数)即可。在查看文档时,您会注意到每种方法的“可用性”下都会告诉您哪些版本的OS包含该方法。就像是:

可用性
在Mac OS X v10.6和更高版本中可用。

假设您不使用目标操作系统上不可用的任何API,那么您要做的就是将部署目标设置为目标最低的OS,然后进行构建。当然,您还将希望在支持的每个OS版本上进行全面测试。

如果您详细说明了在Leopard和Snow Leopard上遇到的“崩溃问题”,则更容易回答更详细的问题。

关于macos - 如何在Lion Cocoa App中添加Leopard和Snow Leopard支持?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/11582687/

10-10 13:56