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

iOS模拟器移除排除架构arm64后报FirebaseAnalytics框架缺失错误

问题根因

Xcode自动给模拟器配置排除arm64架构、手动删除后报framework not found FirebaseAnalytics的核心原因是依赖库架构切片缺失:

  • google-mlkit-object-detection的iOS端依赖链路包含FirebaseAnalytics组件,低版本FirebaseAnalytics没有提供arm64架构的iOS模拟器二进制切片
  • Xcode检测到依赖缺少对应架构切片时,会自动在Target -> Build Settings -> Excluded Architectures -> Any iOS Simulator SDK下添加arm64排除规则,避免链接阶段直接失败
  • 手动删除该规则后,Xcode会尝试编译arm64架构的模拟器安装包,但对应版本的FirebaseAnalytics根本没有arm64模拟器的framework文件,链接阶段就会抛出找不到framework的错误;真机设备使用的是arm64真机架构切片,Firebase从始至终都提供了真机架构的支持,因此真机运行完全正常。
解决方案

根据调试需求二选一即可:

  • 无特殊性能需求的场景:直接保留Xcode自动添加的arm64排除规则即可。M系列芯片Mac会自动通过Rosetta转译运行x86_64架构的模拟器包,不影响日常功能调试,是成本最低的解决方式。
  • 需要使用arm64原生模拟器性能的场景:升级所有MLKit、Firebase相关的CocoaPods依赖到最新版本,Firebase从8.0版本开始官方已经补齐了arm64架构的iOS模拟器切片。升级完成后执行以下命令清理缓存重装依赖:
pod deintegrate
pod cache clean --all
pod install

重装完成后删除Any iOS Simulator SDK下的arm64排除规则,Clean工程后重新编译即可正常运行。

避坑检查

如果升级依赖后仍然报错,打开项目根目录的Podfile,检查post_install钩子中有没有手动写死模拟器排除arm64的配置,找到类似如下的代码段直接删除后重新执行pod install即可:

config.build_settings['EXCLUDED_ARCHS[sdk=iphonesimulator*]'] = 'arm64'

内容的提问来源于stack exchange,提问作者Flutter Dev

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.31 06:09:10