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

Flutter应用可在Xcode运行但无法在Android Studio启动iOS模拟器问题求助

解决Flutter项目在Android Studio中iOS模拟器构建失败的问题

结合你描述的情况和报错日志,核心问题主要有两个:TwitterKit库的架构不兼容模拟器,以及Pods依赖的部署目标版本过低,下面是针对性的解决步骤:

1. 修复TwitterKit架构不兼容问题

你遇到的ld: 为iOS Simulator构建,但链接了为iOS构建的dylib错误,本质是TwitterKit这个库只包含了iOS设备的arm64架构,没有适配模拟器的x86_64架构(Xcode 13对模拟器架构的校验变得更严格)。

解决步骤:

  • 打开项目iOS目录下的Podfile,在文件末尾添加以下配置:
    post_install do |installer|
      installer.pods_project.targets.each do |target|
        if target.name == 'TwitterKit'
          target.build_configurations.each do |config|
            config.build_settings['EXCLUDED_ARCHS[sdk=iphonesimulator*]'] = 'arm64'
          end
        end
      end
    end
    
  • 打开终端,进入项目的ios目录,执行以下命令重置Pods依赖:
    pod deintegrate
    pod install
    
  • 回到Android Studio,依次执行flutter clean和flutter pub get,清理缓存后重新尝试构建。

2. 统一Pods的部署目标版本

日志里反复出现的IPHONEOS_DEPLOYMENT_TARGET设置为8.0警告,是因为Xcode 13已经不再支持iOS 8.0的部署目标,最低要求是iOS 9.0。我们可以一次性把所有Pods的部署目标统一更新:

修改刚才Podfile中的post_install块,补充统一设置规则:

post_install do |installer|
  installer.pods_project.targets.each do |target|
    # 处理TwitterKit架构兼容
    if target.name == 'TwitterKit'
      target.build_configurations.each do |config|
        config.build_settings['EXCLUDED_ARCHS[sdk=iphonesimulator*]'] = 'arm64'
      end
    end
    # 统一设置所有Pods的部署目标为9.0(可根据你的项目需求调整)
    target.build_configurations.each do |config|
      config.build_settings['IPHONEOS_DEPLOYMENT_TARGET'] = '9.0'
    end
  end
end

再次执行pod deintegrate和pod install,确保所有依赖的部署目标都更新到符合Xcode 13要求的版本。

额外的检查和验证

  • 确认Xcode使用新构建系统:打开ios项目的Xcode,点击File -> Project Settings,确认Build System选择的是New Build System(Android Studio会同步Xcode的这个设置)。
  • 彻底重启工具和电脑:有时候缓存残留会导致无规律的错误,重启后再尝试构建能排除这类问题。
  • 确认Flutter SDK为最新稳定版:执行flutter upgrade更新到最新版本,避免版本兼容带来的隐性问题。

按照这些步骤操作后,应该就能解决Android Studio中iOS模拟器的构建问题了。

内容的提问来源于stack exchange,提问作者Tomas Ward

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.04.30 15:07:36