Fastlane Gym - 多个导出选项

Fastlane Gym - multiple export options

我们有几个版本使用不同的应用程序 ID、配置文件和团队(一个团队 ID 是官方的,另一个是企业的)。我试图将它们放在 Gymfile 中,因为 fastlane 无法弄清楚配置文件。 Gymfile 格式必须如何支持多种构建方法和配置文件?

失败,总是获取最后一个条目(应用商店)...

output_directory "./fastlane/builds"

export_options(
  method: "enterprise",
  provisioningProfiles: { 
    "com.company.app.enterprise.production": "Our_App_Enterprise_PRD",
    "com.company.app..enterprise.staging": "Our_App_Enterprise_STG"
  },
  method: "development",
  provisioningProfiles: { 
    "com.company.app..production": "Our_App_Official_PRD",
    "com.company.app..staging": "Our_App_Official_STG"
  },
  method: "app-store",
  provisioningProfiles: { 
    "com.company.app": "Our_App_Official_AppStore"
  }
)

这也失败了。始终采取第一个条目 ...

output_directory "./fastlane/builds"

export_options(
  method: "enterprise",
  provisioningProfiles: { 
    "com.company.app.enterprise.production": "Our_App_Enterprise_PRD",
    "com.company.app..enterprise.staging": "Our_App_Enterprise_STG"
  }
)

export_options(
  method: "development",
  provisioningProfiles: { 
    "com.company.app..production": "Our_App_Official_PRD",
    "com.company.app..staging": "Our_App_Official_STG"
  }
)

export_options(
  method: "app-store",
  provisioningProfiles: { 
    "com.company.app": "Our_App_Official_AppStore"
  }
)

你不能在一个 Gymfile 中有多个 export_options,相反你必须从你的 [=12] 中多次调用 match =],每次都不同export_options

我建议不要使用 GymFile,更好的方法是在你的 fastfile 中使用类似这样的东西: export_options: "fastlane/AppStoreExportOptions.plist",

要创建正确的 plist,请查看这篇很棒的文章:https://blog.bitrise.io/new-export-options-plist-in-xcode-9

遵循 Xcode 9 设置。