Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/objective-c/27.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Iphone 什么';这两者之间的区别是什么;捆绑显示名称";及;捆绑包名称“;在可可应用中';s信息列表_Iphone_Objective C_Cocoa_Macos - Fatal编程技术网

Iphone 什么';这两者之间的区别是什么;捆绑显示名称";及;捆绑包名称“;在可可应用中';s信息列表

Iphone 什么';这两者之间的区别是什么;捆绑显示名称";及;捆绑包名称“;在可可应用中';s信息列表,iphone,objective-c,cocoa,macos,Iphone,Objective C,Cocoa,Macos,这里有一个好问题: 但我只是想知道cocoa应用程序信息列表中“bundle display name”和“bundle name”之间的区别。谢谢Wevah的回答。下面是对混淆这两个常量的人的描述 CbundleDisplayName CbundleDisplayName(String-iOS,Mac OS X)指定捆绑包的显示名称。如果您支持捆绑包的本地化名称,请在信息属性列表文件和语言子目录的InfoPlist.strings文件中包含此键。如果本地化此键,还应包括CFBundleNam

这里有一个好问题:


但我只是想知道cocoa应用程序信息列表中“bundle display name”和“bundle name”之间的区别。

谢谢Wevah的回答。下面是对混淆这两个常量的人的描述

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

如果不打算本地化捆绑包,请不要将此密钥包含在Info.plist文件中。包含此键不会影响捆绑包名称的显示,但搜索此键的本地化版本会导致性能损失

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

有关Mac OS X中显示名称的更多信息,请参阅文件系统概述


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

我认为其他任何答案都不能简明扼要地回答这个问题

  • CbundleDisplayName
    -显示:图标下方的。根据docs的说法,应该本地化,但只有在应用程序本身本地化的情况下,否则会受到某种惩罚(如果这在现实中是真的,我不能说)

  • CFBundleName
    -显示:我不知道。文档建议在列表中使用它,因此建议最多使用16个字符,但例如设置→一般的→应用程序的使用情况列表确实使用了
    CFBundleDisplayName
    。到目前为止,我还没有弄清楚到底在哪里使用这个

哦,这是用于iOS应用程序的,不能用于其他操作系统。

根据我的经验:

  • CbundleDisplayName用于iOS设备上的应用程序网格
  • CbundLename用于iTunes库中存储的应用程序列表

仅当未指定捆绑显示名称(
CbundleDisplayName
)时,才会使用捆绑名称的值(
CbundleName
)显示在应用程序图标下

请注意,
CbundleDisplayName
是可本地化的,应使用它设置iOS Springboard菜单和Mac OS X应用程序/任务控制中显示的应用程序名称

简而言之,不要触摸
CbundLename
并将其值保留为默认值,即
${PRODUCT\u NAME}

据苹果公司称

捆绑显示名称: iPhone主屏幕上显示的应用程序名称来自 CbundleDisplayName(或“Bundle显示名称”作为人类可读的名称 输入iOS应用程序的Info.plist

同样,您在
WatchKit应用程序的启动屏幕中看到的应用程序名称
通知
来自您的WatchKit的CbundleDisplayName 应用程序的Info.plist

捆绑包名称:
iPhone上的Apple Watch应用程序当前使用捆绑包名称(不是
由指定的iOS应用程序的捆绑包显示名称)
其Info.plist的CFBundleName(或“Bundle name”)条目


您可以在Apple开发者页面查看其他相关屏幕截图并获得更多信息

请注意,捆绑包名称也用作HTTP用户代理的前缀。

CbundleDisplayName也是显示为通知标题的内容(在通知中心、锁定屏幕上等)。一个“我不知道”的答案是如何获得选中标记和追加投票的?我的观点是,似乎没有人知道它在哪里使用,也没有人回答过。如果您确实知道答案,请点击“添加另一个答案”添加答案。CbundleDisplayName也用于iTunes文件共享功能。如果保留黑色,即使该功能已启用,应用程序也不会显示在iTunes列表中。我假设CbundLename是存储所有内容的应用程序文件夹或“bundle”的名称。“菜单栏和应用程序的信息窗口”是什么这是指Xcode、模拟器还是iOS设备中的某些东西@有什么帮助吗?@BeemerFan它指的是OSX菜单栏。xhan引用了苹果的文档,如果你注意到的话,上面写着“iOS,MacOSX”,所以这两个版本都适用(其中一些细节显然是特定于平台的).仅引用来源,以下是苹果文档中关于CbundleDisplayName的信息:如果说除非计划本地化,否则不要包含此密钥,这是错误的。苹果文档说您必须包含此密钥,因为Siri使用它。似乎苹果现在至少在2019-06-28或最近的某个时间需要CbundleDisplayName。您现在设置一个无效的二进制拒绝。让苹果把一件简单的事情复杂化。这似乎是对的,Google Hangouts有一个短的显示名称和一个像iTunes library name这样的令人讨厌的长垃圾邮件。如果您收到安装应用程序的错误消息,例如“(CbundLename)此时无法安装,CbundLename也会出现我忍不住想:如果你要去