证书 · Guide
Bundle ID、App ID 和 Provisioning Profile 有什么关系?
Bundle ID 是工程标识;App ID / Identifiers 是后台对该标识与能力的登记;Profile 把 App ID、证书与设备/分发方式绑在一起。三者必须一致才能正确签名。
更新 2026-09-28
三层模型
- Bundle ID:Xcode 工程中的应用唯一字符串(常反向域名)
- App ID / Identifiers:开发者账户中的登记,可开关推送等能力
- Certificate:签名身份(开发或分发等)
- Provisioning Profile:把上述要素与分发场景组合并下发到构建流程
典型正确链路
在后台创建与工程一致的 App ID → 创建/选用匹配证书 → 生成含正确 App ID 与证书的 Profile → Xcode 选择同一 Team 与 Bundle ID → Archive / 导出。开启新能力后通常需重新生成 Profile。
和 ASC 记录的关系
App Store Connect 中的 App 记录也绑定 Bundle ID。本地工程、开发者后台 Identifiers、ASC 三处不一致时,上传或提审会失败。
常见错误
- 工程改了 Bundle ID 但未更新 Identifiers / Profile
- Explicit 与 Wildcard App ID 选用不当
- 团队切换后仍使用旧 Profile
- Push 等能力已开但 Profile 未刷新