Flutter iOS模拟器启动崩溃:dyld_process_snapshot_get_shared_cache报错
问题根源
这个错误大多和Google Maps SDK(GMSServices)的架构兼容性有关——iOS模拟器使用x86_64/arm64架构,部分版本的Google Maps SDK在模拟器环境下存在适配缺陷,导致启动时触发崩溃。
修复步骤
锁定Google Maps SDK兼容版本
在iOS项目的Podfile中,为google_maps_flutter指定支持模拟器的依赖源,示例:pod 'google_maps_flutter', :git => 'https://github.com/flutter/plugins.git', :path => 'packages/google_maps_flutter/google_maps_flutter_ios'也可直接锁定明确兼容模拟器的SDK版本,确保包含对应架构支持。
彻底重置CocoaPods依赖
执行以下命令清理并重装依赖:pod repo update cd ios pod deintegrate pod install flutter run调整Xcode架构配置
打开Xcode进入项目Build Settings:- 将
Architectures设置为Standard Architectures (arm64, x86_64) - 关闭
Build Active Architecture Only(Debug模式可临时开启,Release模式必须关闭)
- 将
重置模拟器环境
打开模拟器,依次点击Device->Erase All Content and Settings,重置后再启动应用。更新Flutter及插件
执行命令更新框架和依赖包,排除版本兼容问题:flutter upgrade flutter pub upgrade
额外排查方向
如果以上步骤无效,直接在Xcode中运行iOS项目,查看更详细的崩溃栈信息,确认是否是GMSServices初始化环节的问题(比如API密钥配置错误、区域权限限制等)。
内容的提问来源于stack exchange,提问作者yolo
相关产品推荐
相关产品推荐

