React Native项目集成Crashlytics时出现CocoaPods版本兼容错误
解决React Native集成Firebase Crashlytics的CocoaPods版本冲突问题
核心问题原因
你当前的@react-native-firebase各服务包版本不统一:app、crashlytics等是v16.4.3(依赖Firebase iOS SDK 10.1.0),但auth、database等是v14.x系列(依赖Firebase iOS SDK 8.12.1),CocoaPods无法同时满足两个版本的Firebase依赖,导致冲突。
解决步骤
统一所有@react-native-firebase包版本
修改package.json中所有@react-native-firebase开头的依赖版本,保持和@react-native-firebase/app一致(即v16.4.3):"@react-native-firebase/app": "^16.4.3", "@react-native-firebase/auth": "^16.4.3", "@react-native-firebase/crashlytics": "^16.4.3", "@react-native-firebase/database": "^16.4.3", "@react-native-firebase/dynamic-links": "^16.4.3", "@react-native-firebase/firestore": "^16.4.3", "@react-native-firebase/messaging": "^16.4.3", "@react-native-firebase/storage": "^16.4.3",重新安装JS依赖
执行命令:yarn install清理iOS端旧依赖缓存
进入项目的ios目录:cd ios删除旧的Pod锁定文件和Pods文件夹:
rm Podfile.lock rm -rf Pods(可选)清理Xcode的DerivedData:
xcodebuild -clean重新安装Pods
执行带仓库更新的Pod安装命令:pod install --repo-update验证编译
打开Xcode或执行npx react-native run-ios验证项目是否能正常编译运行。
注意:@react-native-firebase的每个大版本对应固定版本的Firebase原生SDK,必须保证所有RNFB服务包版本统一,否则必然出现依赖冲突。
内容的提问来源于stack exchange,提问作者user567
相关产品推荐
相关产品推荐

