4

我们使用Fusetools来构建应用程序。使用命令uno build --target=ios --configuration=Release我们为应用程序生成一个新myapp.xcodeproj文件。

当我手动打开.xcodeprojXcode IDE 时,我看到Automatically manage signing复选框被选中。然后我们使用 Fastlane match 来获取证书并在 Xcode 中手动选择 appstore 证书。这一切都很好。

现在 - 我们尝试使用像Bitrise这样的 CI 提供程序使用无头构建过程来构建它。然后一切都停在同一点。我们的.xcodeprojAutomatically manage signing复选框被选中。

我们的 Fastfile 看起来像这样:

disable_automatic_code_signing(path: "../myapp.xcodeproj")

match(git_url: "git@github.com:MyRepo/match.git",
      app_identifier: "com.myapp.myapp",
      type: "appstore",
      readonly: true)

gym(
      workspace: "myapp.xcworkspace",
      scheme: "MyApp",
      export_method: "app-store",
      xcargs: "PROVISIONING_PROFILE_SPECIFIER='match AppStore
      com.myapp.myapp'"
)

Fastfile我们的尝试中,我们首先尝试禁用自动签名,使用 in gym - pass in 参数xcargs: "PROVISIONING_PROFILE_SPECIFIER='match AppStore com.myapp.myapp'"在构建之前设置配置文件。

然后我从 Bitrise CI 监视器得到这个:

Code signing is required for product type 'Application' in SDK 'iOS 10.3'

如果在本地运行尝试将自动签名设置为 false 并执行相同操作,我可以重现此情况。

任何想法?

4

1 回答 1

3

xcargs: "PROVISIONING_PROFILE_SPECIFIER='match AppStore com.myapp.myapp'"

这种方法不再适用,因为应用程序可能有多个目标。相反,请查看Xcode 设置指南,该指南描述了您可以为每个目标的配置文件名称选项使用由match填充的环境变量

于 2017-07-06T15:51:01.980 回答