Flutter iOS项目CocoaPods无法找到兼容的GoogleMLKit/PoseDetectionAccurate版本
解决Flutter集成mrz_scanner后CocoaPods依赖冲突问题
核心问题分析
google_ml_kit 0.6.0依赖GoogleMLKit/PoseDetectionAccurate (~>2.2.0),但本地CocoaPods源未同步到该版本,导致依赖解析失败。
实操修复步骤
1. 更新CocoaPods本地源
先清理并同步最新的Pod仓库规格:
pod repo remove trunk pod setup pod repo update
完成后重新执行arch -x86_64 pod install
2. 锁定兼容的google_ml_kit版本
在pubspec.yaml中指定google_ml_kit的高版本(这类版本依赖的MLKit包更易获取),比如:
dependencies: flutter: sdk: flutter mrz_scanner: ^x.x.x # 保留当前使用的版本 google_ml_kit: ^0.10.0 # 替换为兼容的版本
执行以下命令更新依赖:
flutter pub get arch -x86_64 pod install --repo-update
3. 用Podfile钩子强制替换依赖版本
在iOS目录的Podfile末尾添加post_install钩子,强制将依赖版本替换为本地源存在的版本(如2.3.0):
post_install do |installer| installer.pods_project.targets.each do |target| flutter_additional_ios_build_settings(target) installer.pod_targets.each do |pod_target| if pod_target.name == 'google_ml_kit' pod_target.dependencies.each do |dep| if dep.name == 'GoogleMLKit/PoseDetectionAccurate' dep.instance_variable_set(:@version_requirement, Pod::Version.new('~> 2.3.0')) end end end end end end
保存后执行arch -x86_64 pod install
4. 彻底清理缓存重装
若以上方法无效,执行彻底清理操作:
flutter clean rm -rf ios/Pods rm ios/Podfile.lock flutter pub get arch -x86_64 pod install
内容的提问来源于stack exchange,提问作者Fikri Aliff
相关产品推荐
相关产品推荐

