Flutter- 具有 iOS 多种风格的快车道

问题描述 投票:0回答:2

我正在使用多种口味的 Flutter。我正在使用 fastlane 来自动化 iOS 构建,如下所示,我有多种口味,并且分别有多个 main.dart 变体:

private_lane :build4iOS do |options|
 
  build_app(
      workspace: "./#{$project_name}.xcworkspace",
      configuration: myConfiguration,
      scheme: myScheme,
      silent: false,
      clean: true,
      export_options:{ manageAppVersionAndBuildNumber: false, method: options[:export_options] }
  )

这对 android 来说工作得很好,因为我正在传递标志:“-Ptarget=lib/main_flavor.dart”,根据这个问题的答案,构建摇篮功能:Flutter- using fastlane with android multi flavors.

但是对于 iOS,我不知道如何在 build_app 操作中传递相同的标志!所有构建类型都采用相同的 main.dart 变体

如何设置这样的标志,以便 iOS 构建也指向 main-flavour.dart 的正确变体

我浏览了文档,但找不到解决方案,也找不到关于堆栈溢出的任何解决方案。

ios flutter dart fastlane cicd
2个回答
2
投票

我也遇到了这个。我能找到的最佳解决方案是更新 XCode 中的

FLUTTER_TARGET
变量以匹配所有口味。

  1. 双击打开 XCode
    ios/Runner.xcworkspace
  2. 点击 Runner > Build Settings
  3. 在搜索栏中输入“FLUTTER_TARGET”并展开该列表中的
    FLUTTER_TARGET
    变量
  4. 继续重命名所有
    main.dart
    以匹配您的口味。

0
投票

Config

FLUTTER_TARGET
变量如下图,然后在构建时(XCode 或 CICD 像 FastLane)你只需要关心方案(Dev,Staging,Prod ... 像往常一样),它会自动选择正确的文件 .dart入口点

© www.soinside.com 2019 - 2024. All rights reserved.