捆绑名称和捆绑包显示名称

Boo*_*oon 11 xcode

有人提出类似的问题,包括Bundle Name和Bundle Display Name,例如:

在cocoa应用程序的信息plist中,"bundle display name"和"bundle name"之间有什么区别

但到目前为止,我还没有读到一个非常好的简洁答案,当你需要使用它们时,它们可能被指定不同,等等.

文档似乎表明,捆绑显示名称仅在您具有本地化时才有用,如果您在没有本地化时指定它,可能会损害性能.

有人可以一劳永逸地清除这些问题吗?

Apple的文档

CFBundleName(String - iOS,Mac OS X)标识捆绑包的短名称.此名称长度应少于16个字符,并且适合在菜单栏和应用程序的"信息"窗口中显示.您可以将此密钥包含在相应.lproj子目录的InfoPlist.strings文件中,以便为其提供本地化值.如果您本地化此密钥,则还应包括密钥"CFBundleDisplayName".

CFBundleDisplayName(String - iOS,Mac OS X)指定捆绑包的显示名称.如果您支持捆绑包的本地化名称,请在信息属性列表文件和语言子目录的InfoPlist.strings文件中包含此密钥.如果您本地化此密钥,则还应包括CFBundleName密钥的本地化版本.

如果您不打算本地化您的软件包,请不要在Info.plist文件中包含此密钥.包含此密钥不会影响软件包名称的显示,但会在搜索此密钥的本地化版本时产生性能损失.

在显示捆绑软件的本地化名称之前,Finder会将此密钥的值与文件系统中捆绑软件的实际名称进行比较.如果两个名称匹配,Finder将继续显示捆绑包的相应InfoPlist.strings文件中的本地化名称.如果名称不匹配,Finder将显示文件系统名称.

Eth*_*ker 11

CFBundleDisplayName用于更改设备(和模拟器)上的应用程序图标下方的文本.是的,这应该是本地化的,但是在编辑它或让它说出你想要的任何内容时,没有明显的性能损失.

要编辑它,您可以更改项目中"info"下的"Bundle display name":

Bundle显示名称属性的位置

CFBundleName不是一个线索.我无法弄清楚这种变化或原因.

  • **CFBundleName**显示在菜单栏和应用程序的信息窗口中. (2认同)