Flutter运行iOS模拟器报FBSDKCoreKit库未加载错误如何解决?
针对iOS运行时FBSDKCoreKit加载失败的解决方案
1. 修正Podfile动态库链接配置
- 打开Flutter项目ios目录下的
Podfile文件,找到target 'Runner' do代码块 - 确保该块内存在以下配置,没有则手动添加或修改原有配置:
use_frameworks! :linkage => :dynamic use_modular_headers!
- 保存文件后执行命令:
pod deintegrate && pod install --repo-update
2. 调整Xcode框架嵌入规则
- 打开ios目录下的
Runner.xcworkspace文件(必须使用xcworkspace后缀的工程文件,不可使用xcodeproj文件) - 选中左侧导航栏的Runner项目,在TARGETS分类下选中Runner,切换到General标签页
- 找到Frameworks, Libraries, and Embedded Content区域,检查FBSDKCoreKit、FBSDKLoginKit等Facebook相关框架的Embed属性,设置为Embed & Sign
- 如果列表中未出现FBSDK相关框架,点击+号手动添加后再设置嵌入属性
3. 验证运行路径配置
- 保持在TARGETS-Runner页面,切换到Build Settings标签页
- 搜索
Runpath Search Paths,确保配置项包含@executable_path/Frameworks,没有则手动添加 - 再搜索
Always Embed Swift Standard Libraries,将值设置为YES,避免Swift版本兼容导致的动态库加载失败
4. 全量清理缓存后重编译
- 在项目根目录执行以下命令清理全量缓存:
flutter clean rm -rf ios/Pods ios/Podfile.lock rm -rf ~/Library/Developer/Xcode/DerivedData/* cd ios && pod install --repo-update
- 重启Xcode后再运行项目到iOS模拟器
补充排查点
如果以上操作都无效,可检查你使用的Flutter Facebook登录插件版本与依赖的FBSDK版本是否匹配,可尝试在Podfile中固定FBSDK的兼容版本,示例如下:
pod 'FBSDKCoreKit', '~> 16.0' pod 'FBSDKLoginKit', '~> 16.0'
内容的提问来源于stack exchange,提问作者Roee Tsur
相关产品推荐
相关产品推荐

