当我在Xcode 9(或以前的版本)中打开项目并判断"文件判断器"时,有一个名为"项目文档"的部分,其中有一个名为Project Format的组合框.
可用选项(在Xcode 9中)为Xcode 3.1-compatibleXcode 3.2-compatibleXcode 6.3-compatibleXcode 8.0-compatible:

项目格式选项

这些格式之间有什么不同?

-- UPDATE HISTORY (as of 20 May 2019) --

I originally asked this question when Xcode 6.4 was around.
Xcode 6.4's list included Xcode 3.1-compatible, Xcode 3.2-compatible and Xcode 6.3-compatible, and defaulted to Xcode 3.2-compatible.
Xcode 7 didn't introduce any changes.
Xcode 8 added an Xcode 8.0-compatible item.
Xcode 9 changed the default for new projects to Xcode 8.0-compatible. (8 Oct 2017)
Xcode 10.2 added Xcode 9.3-compatible, Xcode 10.0-compatible (May 2019)

推荐答案

在这种格式更改中似乎没有任何重大的突破性更改(我try 了我的项目中的一些内容,除了版本参数,xml struct 本身没有任何更改…).

据我记忆,在此之前的项目格式很少,其中一些实际上有重大变化,但这种情况可能不会再次发生,因为那是在iOS发生重大 struct 变化的时候,比如从iOS2到iOS3.

另外,顺便说明一下,新项目的默认值仍然是3.2,所以6.3很可能基本上是用于测试的,他们稍后强制执行的版本将是-7.

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

希望能有所帮助!

Ios相关问答推荐

如何在SWIFT中处理不可发送的类型?

如何创建自定义组件来接受(和传递)所有可能的Textfield参数?

验证开发人员应用程序证书是否已在您的设备上验证

clang:错误:SDK 路径中不包含libarclite

mapView swift 导致警告有网格错误

Swift Combine 防止初始值触发接收器并同时防止重复?

在 Swift 中从 Objective C 集合调用块

如何从 Locale Swift 获取货币符号

FileHandle 不会在 iOS 中释放内存

AppCenter 错误:/usr/bin/xcodebuild 失败,返回码:65

在向我的 struct 添加属性后获取线程 10:EXC_BAD_ACCESS (code=EXC_I386_GPFLT)

iOS,Swift 5,AppDelegate open url / .onOpenUrl - 如何找到调用我的自定义方案的调用应用程序

在 iOS 编程中使用 Storyboard 代替 xib 文件有什么好处?

改变 UIView 位置的简单方法?

如何判断是否为 64 位构建了静态库?

Swift中类的初始化类方法?

使用 Swift 在一个 ViewController 中强制横向模式

从 iOS/Android 上的 Web 应用调用本机日期 Select 器

使用 swift 3 在 UIView 上添加阴影

openURL:在 iOS 10 中已弃用