swiftui/iOS开发 App 主 Bundle 和扩展 (Extension) 的 Bundle Identifier 重复了
时间: 2026-05-18 21:12:35
这个错误很明确:你的 App 主 Bundle 和扩展 (Extension) 的 Bundle Identifier 重复了,都用了 cn.chb.cn。
问题原因
错误信息关键部分:
The parent bundle has the same identifier (cn.chb.cn) as sub-bundle
at .../oral.app/PlugIns/vExtension.appex
你的主 App (oral.app) 和它的扩展 (vExtension.appex) 使用了完全相同的 Bundle Identifier,这在 iOS 上是不允许的。每个 target 必须有唯一的标识符。
解决方法
1. 修改扩展的 Bundle Identifier
打开 Xcode 项目:
- 选择 vExtension target
- 进入 Signing & Capabilities 选项卡
- 修改 Bundle Identifier,例如:
- 原来:cn.chb.cn
- 改为:cn.chb.cn.vExtension 或 cn.chb.cn.extension
2. 检查主 App 的 Bundle Identifier
确保主 App 的 Bundle Identifier 保持不变(cn.chb.cn),不要改成别的。
3. 清理并重新构建
# 在 Xcode 中 Product -> Clean Build Folder (按住 Option 键) # 然后重新运行
4. 如果还不行,从设备删除旧应用
有时设备上残留的旧版本会有冲突:
- 在 iPhone/iPad 上手动删除 "词汇宝" App
- 或者执行:
# 终端中运行 xcrun devicectl device uninstall app --bundle-id cn.chb.cn
5. 重启设备(可选)
如果以上都不行,重启 iPhone 后再试。
核心原则
✅ 主 App:cn.chb.cn
✅ 扩展 (vExtension):cn.chb.cn.vExtension(或任何不同的后缀)
完成后应该就能正常安装了。
