遇到 GeneratedPluginRegistrant.h file not found经典 Flutter iOS 错误 解决方案
遇到 GeneratedPluginRegistrant.h file not found 这个经典 Flutter iOS 错误,说明 iOS 原生工程没正确生成/同步 Flutter 插件文件。别急,这个问题 90% 都能靠下面几步解决——就像给发动不了的车打个火,一般都是电瓶问题。
下面按“最可能→最彻底”的顺序给你解决方案:
下面按“最可能→最彻底”的顺序给你解决方案:
✅ 一键总解决(最常用)
在你的 Flutter 项目根目录执行:
flutter clean rm -rf ios/Pods ios/Podfile.lock
flutter pub get
cd ios
pod install
cd ..
flutter build ios
然后重新用 Xcode 打开:
open ios/Runner.xcworkspace
再运行一次模拟器。
⚡ 注意:一定要打开 Runner.xcworkspace,不要打开 Runner.xcodeproj。
否则 CocoaPods 的东西不会被加载,这个错误就跑出来跳舞了。
🔍 如果还是不行,继续往下排查
① iOS 文件夹是不是 .ios 而不是 ios?
你路径里出现的是:
/flutter_mine/.ios/Runner/...
带点号的 .ios 文件夹是 Flutter 临时生成的隐藏工程,不能直接用来开发。
👉 正确做法:使用项目根目录中的 ios 文件夹。
做法:
-
删除
.ios文件夹(可选) -
用 Xcode 打开:
open ios/Runner.xcworkspace
如果你是在 Flutter 3.16+ 生成的 module 项目(flutter module),那 .ios 是正常的,但也必须让 CocoaPods 重新生成文件。
② 手动生成 iOS Runner 工程
如果 .ios 是模块工程(Flutter module),你需要执行:
flutter ios --no-codesign
或者:
flutter create .
让 Flutter 重新生成 iOS 工程。
③ Pod 安装失败?再来一次
如果你看到类似 “xx plugin missing” 或 Ruby 错误,执行:
sudo gem install cocoapods pod repo update cd ios pod install --verbose
④ Xcode 缓存问题
有时 Xcode 比较“倔”,清下缓存:
-
Xcode → Product → Clean Build Folder(按住 Option 才能看到)
-
退出 Xcode
-
重新打开 Runner.xcworkspace
🎯 90% 最终解决方案总结
如果你懒得排查,直接用最有用的一句:
👉 请一定用 Xcode 打开 ios/Runner.xcworkspace,而不是 .ios/Runner/...。
这就是关键问题。
更多推荐
所有评论(0)