Flutter iOS提交App Store报错缺少64位支持、架构无效问题求助
你目前的配置错误是把Release模式下的arm64也加入了排除列表,App Store要求提交的iOS应用必须支持arm64架构,排除后自然会触发架构校验失败,可按以下步骤修复:
- 修正排除架构配置:打开Xcode,分别选中主项目和Pods项目,在Build Settings中找到Excluded Architectures配置项,仅在Debug模式下,给Any iOS Simulator SDK选项添加arm64,Release模式下移除所有arm64相关的排除配置,确保Release模式下没有排除arm64。
- 在Podfile末尾添加强制架构配置,避免每次pod install覆盖设置:
post_install do |installer| installer.pods_project.targets.each do |target| target.build_configurations.each do |config| # 仅Debug模式下排除模拟器arm64 if config.name == 'Debug' config.build_settings['EXCLUDED_ARCHS[sdk=iphonesimulator*]'] = 'arm64' end # Release模式保留标准架构,不排除arm64 config.build_settings['ARCHS'] = '$(ARCHS_STANDARD)' # Release模式下Build Active Architecture Only设为No if config.name == 'Release' config.build_settings['ONLY_ACTIVE_ARCH'] = 'NO' end end end end
- 调整Build Active Architecture Only配置:主项目和所有Pods子项目的Debug模式可设为Yes,Release模式必须统一设为No,确保打包时生成所有必要架构的二进制文件。
- 重新执行依赖构建:
- 执行
flutter clean - 执行
flutter pub get - 删除ios目录下的Podfile.lock、Pods文件夹、xcworkspace文件
- 进入ios目录执行
pod install --repo-update
- 执行
- 用Flutter官方命令构建Release包:执行
flutter build ios --release,构建完成后打开Xcode的xcworkspace文件,选择Any iOS Device (arm64)作为运行目标,再执行Product -> Archive操作,之后正常提交即可。 - 额外校验:如果项目包含App Extension、Widget等扩展组件,需要逐个检查扩展的Build Settings配置,确保其架构规则和主项目完全一致,没有单独排除arm64架构。
内容的提问来源于stack exchange,提问作者taha
相关产品推荐
相关产品推荐

