Xcode 11能否打开Xcode 12构建的项目?老旧Mac有什么兼容解决方案?
针对Xcode版本不兼容的iOS打包解决方案
以下是经过验证的可行方案,可根据你的项目实际情况选择:
方案1:本地调整项目配置适配Xcode 11
- 打开项目ios目录下的
.xcworkspace(如果有CocoaPods依赖)或.xcodeproj文件 - 进入项目配置的「Build Settings」页面,搜索
IPHONEOS_DEPLOYMENT_TARGET,将项目主目标、所有Pods依赖目标的部署版本下调到Xcode 11支持的最高范围(Xcode 11.7最高支持iOS 13.7,不要超过这个版本) - 若项目使用Swift语法,搜索
SWIFT_VERSION,确认版本不高于Xcode 11支持的Swift 5.1,过高则需要降级对应依赖的版本 - 执行命令
rm -rf ~/Library/Developer/Xcode/DerivedData清理历史构建缓存后重新尝试打包
注意:如果项目依赖了仅支持Xcode 12+的原生组件,该方案会出现编译报错,需要同步降级对应依赖到兼容Xcode 11的版本。如果你的React Native版本高于0.63.x,也需要先降级RN到0.63.x稳定版,0.64及以上RN版本默认要求Xcode 12作为最低构建版本。
方案2:使用云端构建环境完成打包
不需要升级本地设备硬件和系统,直接用支持Xcode 12环境的云端CI/CD服务完成构建:
- 将项目代码推送到你的私有代码仓库
- 在云端CI服务中选择搭载Xcode 12的构建镜像,按流程配置iOS打包所需的开发者证书、发布描述文件
- 触发构建后即可直接得到可上传到App Store的正式ipa包,全程不需要本地Xcode参与
内容的提问来源于stack exchange,提问作者Kelly Austin
相关产品推荐
相关产品推荐

