无苹果设备时Codemagic编译iOS项目失败如何解决
无macOS设备时Codemagic iOS构建Pod版本不兼容问题解决方案
问题原因
构建报错是因为项目ios/Podfile未指定Runner目标的iOS平台版本,CocoaPods自动分配了9.0版本,而firebase_core等依赖要求更高的最低iOS部署版本,导致版本适配失败。
解决方案
方案一:直接修改项目代码后提交
无需macOS设备,在任意开发系统下都可以直接操作:
- 打开项目目录下的
ios/Podfile文件 - 找到注释行
# platform :ios, '9.0',删除开头的#取消注释 - 将版本号修改为10.0,修改后该行内容为
platform :ios, '10.0' - 把修改后的Podfile提交到代码仓库,重新触发Codemagic构建即可
方案二:通过Codemagic预处理脚本动态修改(无需改动本地代码)
如果不想修改项目里的Podfile,可以直接在Codemagic配置里加预处理步骤:
- 打开Codemagic对应项目的构建配置页,找到构建脚本设置区域
- 在
flutter build ios命令执行之前,新增一行脚本:
sed -i '' 's/# platform :ios, .*/platform :ios, '\''10.0'\''/' ios/Podfile
- 保存配置后重新触发构建即可,该脚本会在构建前自动将Podfile的iOS版本设置为10.0。
内容的提问来源于stack exchange,提问作者Victor Garcia
相关产品推荐
相关产品推荐

