You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Mac M1添加cloud_firestore后iOS模拟器无法运行,求彻底解决方法

解决Mac M1上Flutter cloud_firestore依赖安装时BoringSSL-GRPC克隆失败的问题

以下是针对Mac M1芯片、Flutter项目添加cloud_firestore后iOS模拟器启动失败(BoringSSL-GRPC克隆报错RPC failed; curl 18)的彻底解决方案:

1. 调整Git配置解决克隆超时

克隆报错大多源于大文件传输中断,先修改Git全局缓存设置:

git config --global http.postBuffer 524288000
git config --global http.maxRequestBuffer 100M
git config --global core.compression 0

2. 更新并清理CocoaPods

确保CocoaPods为最新版本,同时清空旧缓存:

# 用gem更新(若之前通过gem安装)
sudo gem install cocoapods
# 或用Homebrew更新(若用brew管理依赖)
brew upgrade cocoapods

# 清理所有Pod缓存
pod cache clean --all

3. 修改Flutter iOS端的Podfile

打开项目ios/Podfile,完成两处关键修改:

3.1 开头添加静态框架声明

在文件顶部添加(确保最低iOS版本符合cloud_firestore要求):

platform :ios, '13.0'
use_frameworks! :linkage => :static

3.2 完善post_install钩子

替换原有的post_install内容,强制指定模拟器支持的架构:

post_install do |installer|
  installer.pods_project.targets.each do |target|
    flutter_additional_ios_build_settings(target)
    # 适配M1芯片的架构设置
    target.build_configurations.each do |config|
      config.build_settings['ARCHS[sdk=iphonesimulator*]'] = 'x86_64 arm64'
      config.build_settings['ONLY_ACTIVE_ARCH'] = 'NO'
      config.build_settings['IPHONEOS_DEPLOYMENT_TARGET'] = '13.0'
    end
  end
end

4. 清理项目并重新构建

执行以下命令彻底清理后重新安装依赖:

# 清理Flutter项目缓存
flutter clean

# 进入iOS目录,移除旧Pods和锁文件
cd ios
rm -rf Pods Podfile.lock

# 重新获取Flutter依赖
cd ..
flutter pub get

# 重新安装Pods
cd ios
pod install

5. 用Rosetta模式运行终端(可选)

若以上步骤仍失败,尝试用Rosetta兼容模式运行终端:

  • 找到「终端」App,右键选择「显示简介」
  • 勾选「使用Rosetta打开」,重启终端
  • 重新执行上述pod install命令

6. 手动克隆BoringSSL-GRPC(终极方案)

若Git克隆始终失败,手动克隆仓库并让CocoaPods使用本地路径:

# 克隆BoringSSL仓库到本地目录(比如Documents)
git clone https://github.com/google/boringssl.git ~/Documents/boringssl

然后在ios/Podfile中添加指定路径的依赖:

pod 'BoringSSL-GRPC', :path => '~/Documents/boringssl'

再重新执行pod install。

内容的提问来源于stack exchange,提问作者Hafizur Rahman

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.17 06:24:59