M1 Mac更新Flutter2.5.1与Xcode13后iOS编译报Flutter/Flutter.h未找到怎么解决
解决方案
一、M1芯片专属适配操作
- 右键访达进入「应用程序/实用工具」目录,找到终端,右键点击显示简介,勾选「使用Rosetta打开」,重启终端后执行后续所有命令。
- 重新安装CocoaPods及依赖组件:
sudo gem uninstall cocoapods sudo gem install cocoapods sudo gem install ffi
二、项目全量清理重建
- 在项目根目录执行如下命令清理缓存:
flutter clean rm -rf ios/Pods ios/Podfile.lock ios/Runner.xcworkspace flutter pub get
- 进入iOS目录指定架构重新安装Pod依赖:
cd ios arch -x86_64 pod install --repo-update
三、Xcode配置调整
- 打开
ios/Runner.xcworkspace文件,选中左侧Runner项目,进入Build Settings页:- 搜索
Excluded Architectures,在Debug、Release模式下,针对Any iOS Simulator SDK添加值arm64 - 搜索
Build Active Architecture Only,Debug模式设置为Yes,Release模式设置为No
- 搜索
- 选中左侧Pods项目,重复执行上面两项配置修改,确保所有子模块的编译架构配置统一。
四、兼容配置兜底
如果执行完以上步骤依然报错,可以修改iOS目录下的Podfile,在post_install块添加如下配置:
post_install do |installer| installer.pods_project.targets.each do |target| flutter_additional_ios_build_settings(target) target.build_configurations.each do |config| config.build_settings['EXCLUDED_ARCHS[sdk=iphonesimulator*]'] = 'arm64' config.build_settings['ONLY_ACTIVE_ARCH'] = 'YES' end end end
修改完成后重新执行arch -x86_64 pod install,再启动项目即可。
补充:你提到的GoogleSignIn功能异常问题,iOS端需要在Info.plist中配置对应Google服务的URL Scheme,配置完成后即可正常使用。
内容的提问来源于stack exchange,提问作者RaviPenikelapati
相关产品推荐
相关产品推荐

