文档章节

Xcode的Product Name、Bundle Name、Bundle Display Name

yoyoso
 yoyoso
发布于 2015/02/15 17:37
字数 501
阅读 11946
收藏 6

今天看到一份代码Build Settings中的Product Name与在模拟器/真机上显示的名字不一致,挺奇怪的,以前一直以为Product Name就是显示的应用名。小小研究了一下应用名显示问题,终于弄懂了。

通常我们在 info.plist 中,可以看到类似如下配置:

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

相关说明:

Bundle name – is folder name, where your app (including executable file and all resources) will be stored (Cool Program.app). Executable name – is a program binary name, i.e. Cool Program.app/CoolProgram Bundle display name – is what will be shown on iPhone screen, for example Cool Prog (since Cool Program probably will not fit on Springboard). And, Apple claims, that Bundle Display name must correspond to Bundle name, i.e. you cannot use bundle name TheApplication, and bundle display name Something Other

  • Bundle name 简单来说就是 App 安装到 iOS 机子里的 App 文件夹名。

  • Executable name  –  执行程序名,默认与 PRODUCT_NAME 一致。

  • Bundle display name  –  真正显示到用户屏幕上的 App 名称。

可见在模拟器/真机上显示的名字是由Bundle Display Name决定的。默认情况下Bundle Display Name就等同于Product Name,所以就造成了我认为Product Name就是应用显示名的错觉。

另外发现,在部分情况下如果Product Name为中文字符,会导致编译运行在真机时,第一次必报 Could not inspect the application package. 错误,这个可以参考《使用 Xcode6 在 iOS8 设备上调试报错 Could not inspect the application package》。

估计我看的这份代码就是遇到了这种情况,将Product Name设置成为了英文名,而将Bundle Display Name设置为中文名。


参考:

使用 Xcode6 在 iOS8 设备上调试报错 Could not inspect the application package

Bundle Name, Executable Name, Product Name…anything else?

© 著作权归作者所有

共有 人打赏支持
yoyoso
粉丝 48
博文 128
码字总数 44896
作品 0
南京
高级程序员
加载中

评论(1)

Xcode的Product Name、Bundle Name、Bundle Display Nam

Xcode的Product Name、Bundle Name、Bundle Display Name 摘要 今天看到一份代码Build Settings中的Product Name与在模拟器/真机上显示的名字不一致,挺奇怪的,以前一直以为Product Name就是...

法斗斗
2015/09/22
27
0
ios xcode如何修改应用的名称

ios xcode如何修改应用的名称 当你创建一个project时,会要求你输入product name & company identifier,这两个property的值should和你在apple developer member center的“Provisioning Po...

法斗斗
2015/09/22
52
1
iphone中自定义Universal Framework

大家好, 我有很强烈的欲望来写一点关于这个主题的文章,因为在网络当中关于这个主题的信息实在少得可怜。而且,大多数情况下是错误的或信息不完整,是有误人子弟的感觉。如果你想为iphone写...

长平狐
2012/08/13
1K
0
Icon和LunchImage

如果不想看英文源文档,可以参照此图: 苹果官方文档: https://developer.apple.com/library/ios/qa/qa1686/_index.html Technical Q&A QA1686 App Icons on iPad and iPhone Q: How are t......

HelloSwift
2016/08/10
53
0
Target的作用

XCode工程中 Targets讲解是本文要介绍的内容,相信很多人都注意到XCode中, 有个Target的概念. 这在很多地方都有所体现, 比如打开一个工程后, 左侧的列表中有Targets一项, 而在工程界面的顶部...

JlongTian
2016/12/25
15
0

没有更多内容

加载失败,请刷新页面

加载更多

mixin混入

①新建mixin.js文件 const mixin = { methods: { /** * 分页公共方法 */ handleSizeChange(val) { this.pageData.size = val; this.query(); }, hand......

不负好时光
昨天
0
0
ERC1155实践|区块链游戏的平行宇宙和为此而生的Enjin钱包

1 摘要 恩金(Enjin)花了大半年的时间一直在完善ERC-1155这个通证协议,毫不夸张地说,该标准是现有以太坊上最适用于游戏资产的通证标准,将主流游戏中道具涉及到的一切操作经过高度抽象之后...

HiBlock
昨天
1
0
Oracle发布开源的轻量级 Java 微服务框架 Helidon

近日,Oracle推出了一个新的开源框架Helidon,该项目是一个用于创建基于微服务的应用程序的Java库集合。和Payara Micro、Thorntail(之前的WildFly Swarm)、OpenLiberty、TomEE等项目一样,...

关注公众号_搜云库_每天更新
昨天
1
0
启动线程以及安全终止线程

启动 使用start()方法可以启动线程。 start()方法的含义是告知线程规划器线程已初始化完毕,可以分给这个线程时间片了(执行run()方法)。 安全终止线程 示例代码 import java.util.concurr...

karma123
昨天
1
0
Python+OpenCV 图像风格迁移(模仿名画)

现在很多人都喜欢拍照(自拍)。有限的滤镜和装饰玩多了也会腻,所以就有 APP 提供了模仿名画风格的功能,比如 prisma、versa 等,可以把你的照片变成 梵高、毕加索、蒙克 等大师的风格。 这...

crossin
昨天
1
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部