【问题标题】:What does "Document is distributed as a bundle" mean?“文档作为捆绑分发”是什么意思?
【发布时间】:2016-07-20 06:32:16
【问题描述】:

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

我发现此选项控制应用程序 Info.plist 文件中 CFBundleDocumentTypesLSTypeIsPackage 键。在 Apple 的官方文档中,我只能找到两个关于此密钥用法的解释。两者都是相对较大的表格中非常简短的条目。

第一个解释来自App Creation Process Overview。它非常简短,没有提供比上面的屏幕截图更多的信息。

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

第二个解释更有帮助。它来自 Mac 开发者库的Information Property List Core Foundation Keys Reference

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

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

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

【问题讨论】:

    标签: xcode macos cocoa info.plist document-based


    【解决方案1】:

    如您所见,bundle 是一种专门的目录结构,其中包含特定文件(如Info.plist)。

    Document Package 就是这样一个捆绑包。

    因此

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

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

    【讨论】:

    • 您无可否认是正确的,但为什么不将其视为目录?
    • @WilliamRosenbloom 因为它不仅仅是一个目录。例如,Finder 会以不同的方式处理它。
    猜你喜欢
    • 2014-02-23
    • 1970-01-01
    • 1970-01-01
    • 2021-05-23
    • 1970-01-01
    • 1970-01-01
    • 2011-01-20
    • 2022-01-23
    • 2016-11-07
    相关资源
    最近更新 更多