Flutter iOS项目FBSDKCoreKit版本兼容问题求助
解决Flutter iOS端
flutter_facebook_auth与facebook_app_events的FBSDK版本冲突问题 核心原因
你当前使用的插件版本依赖的Facebook SDK版本不匹配:
facebook_app_events: ^0.19.0依赖FBSDKCoreKit ~>17.0flutter_facebook_auth: ^6.0.4依赖FBSDKCoreKit =16.3.1
方案一:升级flutter_facebook_auth到兼容FBSDK 17.x的版本
flutter_facebook_auth的7.x及以上版本已适配FBSDK 17.x,和facebook_app_events: ^0.19.0的依赖完全匹配:
- 修改
pubspec.yaml中的依赖:
dependencies: flutter: sdk: flutter flutter_facebook_auth: ^7.0.0 # 升级到7.x版本 facebook_app_events: ^0.19.0
- 执行以下命令更新依赖并重新安装Pods:
flutter pub get cd ios pod deintegrate pod install --repo-update
方案二:降级facebook_app_events到兼容FBSDK 16.x的版本
如果你不想升级flutter_facebook_auth,可以将facebook_app_events降级到依赖FBSDK 16.x的版本(比如^0.18.0):
- 修改
pubspec.yaml:
dependencies: flutter: sdk: flutter flutter_facebook_auth: ^6.0.4 facebook_app_events: ^0.18.0 # 降级到0.18.0
- 同样执行更新和Pods安装命令:
flutter pub get cd ios pod deintegrate pod install --repo-update
方案三:强制统一FBSDK版本(兜底方案)
如果上述方案都无效,可通过CocoaPods的post_install脚本强制指定统一的FBSDK版本:
- 打开iOS目录下的
Podfile,在文件末尾添加:
post_install do |installer| installer.pods_project.targets.each do |target| if target.name == 'FBSDKCoreKit' target.build_configurations.each do |config| config.build_settings['IPHONEOS_DEPLOYMENT_TARGET'] = '12.0' config.build_settings['MARKETING_VERSION'] = '17.0.1' # 指定你要统一的版本号 end end if target.name == 'FBSDKLoginKit' target.build_configurations.each do |config| config.build_settings['IPHONEOS_DEPLOYMENT_TARGET'] = '12.0' config.build_settings['MARKETING_VERSION'] = '17.0.1' end end end end
- 执行Pods安装:
cd ios pod install --repo-update
注意:强制版本可能存在潜在兼容性风险,优先使用方案一或二。
内容的提问来源于stack exchange,提问作者ved
相关产品推荐
相关产品推荐

