Xcode 什么是;文档以捆绑方式分发”;什么意思?

Xcode 什么是;文档以捆绑方式分发”;什么意思?,xcode,macos,cocoa,info.plist,document-based,Xcode,Macos,Cocoa,Info.plist,Document Based,我正在使用Xcode 7.3.1创建一个基于Cocoa文档的应用程序。我注意到在文档类型信息面板中有一个我不理解的选项。它说“文档作为捆绑包分发”,看起来是这样的 我发现该选项控制应用程序Info.plist文件中的CFBundleDocumentTypes的LSTypeIsPackage键。在苹果的官方文档中,我只能找到两种关于该键用法的解释。两者都是相对较大的表中非常简短的条目 第一个解释来自于。它非常简短,只提供了上面的截图 一个布尔值,指定文档是否作为捆绑分发。如果否,请忽略此值 第二

我正在使用Xcode 7.3.1创建一个基于Cocoa文档的应用程序。我注意到在文档类型信息面板中有一个我不理解的选项。它说“文档作为捆绑包分发”,看起来是这样的

我发现该选项控制应用程序Info.plist文件中的
CFBundleDocumentTypes
LSTypeIsPackage
键。在苹果的官方文档中,我只能找到两种关于该键用法的解释。两者都是相对较大的表中非常简短的条目

第一个解释来自于。它非常简短,只提供了上面的截图

一个布尔值,指定文档是否作为捆绑分发。如果否,请忽略此值

第二种解释更有帮助。它来自Mac开发者库的

指定文档是否作为捆绑包分发。如果设置为true,则捆绑目录将被视为文件。(在OS X v10.4及更高版本中,如果存在LSItemContentTypes键,则忽略此键。)

听起来,这个选项似乎会影响操作系统处理应用程序包本身的方式。如果是这样的话,那么我真的不知道如何理解这些描述


我知道许多文档类型(例如
.xcodeproj
文档)实际上是目录。此设置是否控制文档是否为目录?

如您所知,捆绑包是一种专门的目录结构,它包含特定的文件(如
Info.plist

A就是这样一个包裹

所以

此设置是否控制文档是否为目录


对,;但是,您不会将其称为目录;这是一个捆绑包。

无可否认,你是对的,但为什么不把它视为一个目录?@WilliamRosenbloom,因为它不仅仅是一个目录。例如,Finder将以不同的方式对待它。