捆绑软件名称,可执行文件名称,产品名称…还有什么?

捆绑软件名称,可执行文件名称,产品名称…还有什么?

有人可以请帮助澄清在Xcode上的iPhone项目中使用这些每个? 他们永远不会混淆我的生活bajezus …我厌倦了让他们错了。

有人请解释…为什么我们需要一个应用程序环境这个许多不同的命名scheme? 我要用这些东西来做什么,这样我就可以将它们粘在我头上的右边的小洞里了?

如果你看一下info.plist,它就是这样的:

Bundle Display Name - ${PRODUCT_NAME} Executable File - ${EXECUTABLE_NAME} Bundle Name - ${PRODUCT_NAME} 

因此,您可以看到,通常情况下,PRODUCT_NAME会为您提供该软件包的相同名称以及用户所看到的内容。

在某些情况下,您可能需要一个更复杂的显示名称,这个名称不适合命名捆绑包或可执行文件,这就是为什么您可以独立更改它们的原因 – 但您不必这样做。 PRODUCT_NAME默认与项目名称相同,但您也可以在构build设置中覆盖它。

您不应该改变在info.plist中设置的方式,除非您有一个很好的理由,只需更改PRODUCT_NAME即可。

软件包名称 – 文件夹名称,您的应用程序(包括可执行文件和所有资源)将存储在其中(Cool Program.app)。

可执行文件名称 – 是一个程序二进制名称,即Cool Program.app/CoolProgram

捆绑显示名称 – 将显示在iPhone屏幕上,例如Cool Prog(因为Cool Program很可能不适合在Springboard上)。

而且,Apple声称,Bundle Display的名称必须与Bundle名称相对应,即不能使用包名TheApplication和bundle display name Something Other

当你有一个用户界面的应用程序(例如:计算器),那么上面的大部分将是相同的,并没有多大关系,但如果你的项目输出只是一个包(一些引擎),那么你可以有不同的可执行文件(应用程序/前端使用ur束作为后端的UI),你可以使用不同的可执行文件名来指定它。 理想情况下,肯德尔说捆绑名称将与产品名称相同。 请参阅Xcode构build系统指南以获得更好的理解。 希望这可以帮助。 :-)。

还有$ {TARGET_NAME} – 例如,如果您有一个项目使用不同的“捆绑显示名称”创build多个目标。

根据Apple.com的文档,这与你所期望的完全相反。

“显示名称”是该包的实际名称。

但“捆绑名称”只是简短的“显示”名称。

来自Apple.com的实际剪切/粘贴:

CFBundleName(推荐,可本地化)捆绑的实际名称。

CFBundleDisplayName(推荐的,可本地化的)包的简短显示名称。

啊。