修复Flutter一些iOS编译错误
Сocoapods trunk URL couldn't be downloaded
逐行运行此命令
shell
gem uninstall cocoapods
arch -x86_64 brew install cocoapods
arch -x86_64 brew reinstall cocoapods
cd ios
pod cache clean --all
pod install (如果m1 macOS 运行这个"arch -x86_64 pod install")
pod update
[!] CocoaPods did not set the base configuration of your project because your project already has a custom config set. In order for CocoaPods integration to work at all, please either set the base configurations of the target Runner
to Target Support Files/Pods-Runner/Pods-Runner.profile.xcconfig
or include the Target Support Files/Pods-Runner/Pods-Runner.profile.xcconfig
in your build configuration (Flutter/Release.xcconfig
).
- 我们首先用Xcode打开
ios/Runner.xcworkspace
; - 然后选中
Project Navigator
下的Runner
项目,再选中PROJECT
下面的Runner
,再然后选中Info
; - 我们找到
Configurations
,把Debug
、Release
和Profile
下面的Runner/Runner
全部选为None
; - 再一次运行
pod update
,警告消息。
需要注意的是,如果运行了pod update
之后,选项会被自动勾选为Pods-Runner.debug
或者Pods-Runner.release
,在这个选项之下,会报错:
Command PhaseScriptExecution failed with a nonzero exit code
如果需要解决这个报错,只需要修改为Debug
或者Release
即可消除。
Framework 'Pods_Runner' not found
- 删除掉
ios
文件夹下面的Podfile
文件; - 在项目的文件夹下,按顺序运行
flutter clean
和flutter pub get
命令,它将会重新生成Podfile
文件; - 在新的
Podfile
文件中的# platform :ios, '12.0'
的版本号修改为14.0
,并取消掉注释:platform :ios, '14.0'
; - 在
ios
文件夹下运行pod install
命令。
根据我实际的测试,我发现这个问题很奇怪,实际上,不需要上面步骤那么复杂,只要触发了这个编译错误,你只需要执行一次 步骤2和4即可,再编译就不会出现这个错误了。
这个时候,一切就都正常了。
我在Intel芯片的Macbook上没有问题,但是在ARM的M2芯片下碰到的这个问题。