#Unity# iOS打包上传时报错 The bundle uses a bundle name or display name that is already taken
问题背景
最近在做一个相机类App,在正式上传之前,我们已经创建好bundle id,并把想好的名字提交到了苹果网站的itune connect。
但是,打包上传的时候,却报了这么个错误:
The bundle uses a bundle name or display name that is already taken
原因
为什么使用了一个已经创建好的App名字,依然会报错呢?
StackOverFlow上有个小哥也遇到了这个问题:
Error while validate or upload on App Store “The bundle uses a bundle name or display name that is already taken”
这个小哥提到一个关键点:
Actually IOS project generate by Unity OSX Mac Editor
他的XCode工程是用Unity生成的。
小哥在评论里提到了另外一个关键点:
为了占住这个名字,他甚至已经提交过一个空白的工程。
那么,还有什么可能呢?
看完这个小哥的悲惨遭遇,我又回到了google的搜索结果,发现简书上也有人提到这个问题:
打开一看,发现他的遭遇跟我的不一样,他因为
使用了与之前上传的App的名字不一样的名字。
但是,在评论里,有人提到了另一个方向:
排查发现有一个地方写的 Wallet,是与系统的App重复,但不是 bundle id
于是,我赶紧回去看了一眼我的App:
原来Unity生成XCode工程时,自动使用bundle id的最后一段(比如这个例子中的com.xmanyou.camera中的camera) 作为product name
而XCode工程默认是使用产品名Product Name作为包名Bundle Name的:
显然,Camera是系统App的名字的可能性非常大。
解决方法
在XCode工程的 Build Settings 中修改可能与系统App冲突的Product Name。
注意,改完Product Name以后,记得检查你的Bundle Id是否被修改了,这个要与你要与你在iTunes Connect网站上建的一致。
参考
- https://stackoverflow.com/questions/24813726/invalid-binary-error-the-bundle-uses-a-bundle-name-or-display-name-associated-w
- https://stackoverflow.com/questions/46447268/error-while-validate-or-upload-on-app-store-the-bundle-uses-a-bundle-name-or-di?noredirect=1&lq=1
- https://www.jianshu.com/p/621e98b05244
扫一扫关注微信公众号:耿直的IT男阿斌
聊一聊IT男眼中的世界