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

TestFlight下测试含多main_<env>.dart入口的Flutter iOS应用

解决方案

1. 配置不同构建配置对应的Flutter入口文件

你找不到入口传参位置是因为本地执行flutter run时的-t参数,在Xcode构建时是通过FLUTTER_TARGET这个配置项指定的,按以下步骤配置即可:

  • 打开Xcode中的Runner项目,选中左侧的Runner target,切换到「Build Settings」页面
  • 搜索FLUTTER_TARGET,如果没有找到就点击右上角的+号,添加一个User-Defined Setting,命名为FLUTTER_TARGET
  • 你已经为不同flavor创建了对应的Build Configuration(如Release-dev、Release-test、Release-prod),分别给不同配置的FLUTTER_TARGET赋值:
    • Release-dev 对应值:lib/main_dev.dart
    • Release-test 对应值:lib/main_test.dart
    • Release-prod 对应值:lib/main_prod.dart

2. 确认Scheme的归档配置

检查你已创建的各flavor对应Scheme的归档阶段配置:

  • 点击顶部Scheme选择框,选择「Edit Scheme」
  • 选中test对应的Scheme,切换到「Archive」标签,将Build Configuration设置为Release-test
  • 同理将prod对应Scheme的Archive阶段Build Configuration设置为Release-prod

3. 上传逻辑

后续需要给TestFlight传测试环境包时,选择test对应的Scheme执行归档操作再上传即可,构建时会自动调用main_test.dart入口,加载测试环境的API和Firebase配置;需要上传App Store正式包时,切换到prod对应的Scheme执行归档上传,自动加载生产环境配置,无需手动传参。
你之前配置的自动复制对应GoogleService-Info.plist的脚本无需调整,只要各Build Configuration对应的plist路径配置正确即可正常生效。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.30 20:30:00