Xcode - 更改捆绑标识符但不更改产品名称
Posted
技术标签:
【中文标题】Xcode - 更改捆绑标识符但不更改产品名称【英文标题】:Xcode - change bundle identifier but not product name 【发布时间】:2013-02-06 23:00:31 【问题描述】:我的包标识符必须与 ios 开发门户中的标识符匹配:
com.mydomain.myappname
似乎在 Xcode 中执行此操作的唯一方法是转到 Targets,Build Settings,并将 Product Name 更改为 myappname。但是,这也会导致应用程序在设备主屏幕(图标下方)上被称为“myappname”。我知道必须能够以不同的方式设置。 (我希望显示“我的应用程序”而不是“myappname”)。我在哪里设置?
【问题讨论】:
【参考方案1】:您在 Xcode 的 Build Settings 中将此设置为“产品名称”。您想在应用的 info.plist 文件中设置捆绑标识符。
Info.plist 中的包标识符可以包含占位符变量,例如 $PRODUCT_NAME。编译应用程序时,这些占位符变量将替换为构建设置中的值。使用 plutil 查看 .app 包中 Info.plist 的编译版本。
【讨论】:
如果我将产品名称设置为“我的应用程序”,我会收到此错误:配置文件“我的应用程序”指定了与当前设置不匹配的应用程序标识符“com.mydomain.myappname” com.mydomain.My-App' 你想改变你的包标识符吗? 在 info.plist 中,包标识符是这样的:com.mydomain.$PRODUCT_NAME:rfc1034identifier。我是否只需将其删除并手动设置? 嗯,这只是使用 PRODUCT_NAME 变量,所以那里的任何内容都将被替换。所以我想这来自您存储为“产品名称”构建设置的任何内容。请记住,.plist 会被编译,因此所有占位符变量都会在构建您的应用程序时得到解析。要查看输出 .plist 的样子,请运行plutil -p MyApp.app/MyApp-Info.plist
并查看那里的 Bundle Identifier 的输出。
是的,它是在构建设置中设置为“产品名称”的任何内容。【参考方案2】:
“Bundle identifier”和“Bundle display name”在 info.plist 文件中设置。 “捆绑显示名称”是主屏幕上的应用程序图标显示的内容。它们可以使用占位符值,例如 $PRODUCT_NAME 或 $PRODUCT_NAME:rfc1034identifier,或者您可以显式设置它们。 “产品名称”在构建设置中设置。您可以先按照自己的方式设置“产品名称”,然后通过编辑 info.plist 文件来调整或覆盖派生值。
听起来您想要做的是将产品名称设置为“myappname”,将捆绑标识符保留为“com.mydomain.$PRODUCT_NAME:rfc1034identifier”,然后将捆绑显示名称设置为“我的应用”。
【讨论】:
【参考方案3】:我所做的是将匹配的包标识符名称放入“构建设置>产品名称”中。然后在“信息 > 捆绑显示名称”中键入实际的应用程序名称。覆盖 $PRODUCT_NAME 变量并键入确切的“我的应用程序”。这样就行了。
【讨论】:
以上是关于Xcode - 更改捆绑标识符但不更改产品名称的主要内容,如果未能解决你的问题,请参考以下文章