Flutter项目Xcode打包遇Provisioning Profile签名错误如何解决?
解决方案
报错1:勾选「Automatically Manage Signing」时提示"Runner" requires a provisioning profile
- 第一步清理缓存:关闭Xcode,执行命令删除Xcode衍生数据:
rm -rf ~/Library/Developer/Xcode/DerivedData/*,再删除项目ios目录下的Pods文件夹、Podfile.lock文件、Runner.xcworkspace文件 - 回到Flutter项目根目录执行
flutter clean && flutter pub get,进入ios目录执行pod install重新生成依赖配置 - 重新打开
Runner.xcworkspace,进入Signing & Capabilities页面,检查Debug、Release、Profile三个构建模式下的Team、Bundle ID、签名证书配置是否完全统一,避免单模式配置错误 - 若仍报错,打开钥匙串访问,删除所有过期的Apple开发/发布证书,重启Xcode后重新勾选自动管理签名,等待Xcode自动拉取最新配置文件
报错2:手动选择Provisioning Profile时提示证书不匹配
- 首先校验配置文件与证书的绑定关系:登录Apple开发者后台,找到名为"Final"的Provisioning Profile,确认其绑定的Distribution证书ID,与报错信息中的
N5TXXXXKY9完全一致,不一致则重新编辑配置文件绑定正确证书后下载安装到本地 - 若绑定ID一致,打开钥匙串访问检查本地安装的发布证书:确认证书附带私钥,且不存在多个同名重复证书,私钥缺失需要从证书导出的原设备重新导出带私钥的.p12格式证书安装
- 检查Xcode Signing设置中的Signing Certificate选项,选择与配置文件绑定的对应证书,避免选错版本
- 检查项目ios目录下的xcconfig配置文件(包括
Flutter/Generated.xcconfig及自定义的xcconfig文件),删除手动配置的PROVISIONING_PROFILE_SPECIFIER、CODE_SIGN_IDENTITY字段,避免配置优先级覆盖Xcode手动选择的参数
内容的提问来源于stack exchange,提问作者User123
相关产品推荐
相关产品推荐

