使用Xcode 14.2上传App至TestFlight遇CFBundleIdentifier冲突错误求助
解决CFBundleIdentifier Collision Error(TestFlight上传验证失败)
错误含义
这个错误核心是你的项目中存在多个Target(主App、Action Extension、共享Framework等)使用了完全相同的CFBundleIdentifier。苹果的规则是:同一个开发者账号下,每个Bundle的标识符必须唯一,哪怕是关联的Extension或共享组件也不能重复。
解决步骤
逐一检查所有Target的Bundle ID
打开Xcode选中项目文件,在左侧Targets列表里逐个查看主App、Action Extension、共享Framework的配置:- 切换到Target的「General」标签页,查看「Identity」区域的「Bundle Identifier」
- 或者直接打开对应Target的
Info.plist文件,找到CFBundleIdentifier字段
确保每个Target的ID遵循唯一命名规则,比如:
- 主App:
com.yourcompany.yourapp - Action Extension:
com.yourcompany.yourapp.action-extension - 共享Framework:
com.yourcompany.yourapp.shared-framework
确认共享Framework的配置
如果你把共享Framework作为独立Target,一定要保证它的Bundle ID和主App、Extension都不重复。同时检查主App和Extension对这个Framework的「Embed & Sign」设置,避免因配置错误导致Bundle ID被重复识别。清理Xcode缓存后重新归档
缓存可能导致配置读取异常,执行以下操作:- 按下
Cmd+Shift+K清理项目 - 打开Finder,前往
~/Library/Developer/Xcode/DerivedData,删除当前项目对应的缓存文件夹 - 重新归档项目,再尝试上传验证
- 按下
检查App Store Connect的标识符列表
登录App Store Connect,进入「Identifiers」页面,确认你要使用的所有Bundle ID(主App、Extension、Framework)没有被账号下其他已存在的App占用。如果有重复的旧标识符,及时删除或修改。
内容的提问来源于stack exchange,提问作者Nasimxon
相关产品推荐
相关产品推荐

