Xcode项目格式:3.1、3.2、6.3和8.0有什么区别?


70

当我在Xcode 9(或更早版本)中打开一个项目并检查File Inspector时,有一个名为Project Document的部分,带有一个名为Project Format的组合框。
可用的选项(在Xcode中9)有Xcode 3.1-compatibleXcode 3.2-compatibleXcode 6.3-compatible,和Xcode 8.0-compatible

项目格式选项

这些格式之间有什么区别?

-更新历史(截至2019年5月20日)-

我最初在Xcode 6.4出现时问这个问题。
Xcode的6.4的名单包括Xcode 3.1-compatibleXcode 3.2-compatibleXcode 6.3-compatible,并默认为Xcode 3.2-compatible
Xcode 7没有进行任何更改。
Xcode 8添加了一个Xcode 8.0-compatible项目。
Xcode 9将新项目的默认设置更改为Xcode 8.0-compatible。(2017年10月8日)添加了
Xcode 10.2Xcode 9.3-compatibleXcode 10.0-compatible(2019年5月)


1
我发现回购请求与CocoaPods/Xcodeproj回购中的新项目格式有关。几天前的一篇帖子说,他们还没有发现6.3格式的实际变化。
2015年

Answers:


31

在这种格式更改中,似乎没有重大的重大更改(我尝试了很少的项目,除了version参数之外,xml结构本身没有任何更改。)。

据我所知,在此之前很少有项目格式,其中一些实际上进行了重大更改,但是这不会再发生,因为那是在iOS进行重大结构更改的时期,例如从iOS2到iOS3。

另外,仅需注意,新项目的默认设置仍为3.2,因此6.3基本上用于测试的可能性很大,稍后将强制使用的版本为-7。

我最好的猜测是,Swift 2有了新的格式以及其中处理模块/依赖项的方式,因为它肯定需要项目中存在一些其他数据。但是要确保100%确保我们需要苹果团队中某人的信息。

希望能帮助到你!


1
是的,就像我在问题中说的那样,我注意到默认值仍然是3.2,这就是为什么我对格式感到好奇的原因:)因此,似乎没有大的变化,尽管幕后可能发生了一些变化。
2015年

2
快速更新:Xcode 7和Swift 2已正式发布,但是项目格式没有任何变化。我们可能需要等待Xcode 8 ...或者也许根本无法回答这个问题!
帕拉

1
我看没有(比的objectVersion = 48其它,无论该值的装置)
NiñoScript

2
两年后,仍然没有任何变化。是否有任何新的猜测,也许带有参考?
拉斐尔

2
刚刚使用Xcode 10重新审视了这一点。除了增加objectVersion和更新外compatibilityVersion,似乎做了一个小的更改,LD_RUNPATH_SEARCH_PATHS不再存储为空格分隔的列表,而是以逗号分隔的集合。仍然,很小。
iOS开发人员
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.