0

我正在尝试通过 CircleCI 上的 fastlane 构建我的反应原生应用程序。我正在使用 match 来管理证书/配置文件并使用这些指南:

fastlane ios beta在当地工作。

然而,在 CI 上,我发现设置无法构建,并出现以下错误:

错误:没有找到匹配“match Development app.my”的团队“...”的配置文件:Xcode 找不到任何匹配“.../match Development app.my”的配置文件。安装配置文件(通过将其拖放到 Xcode 的停靠项上)或在目标编辑器的 Signing & Capabilities 选项卡中选择不同的配置文件。(在项目“MyApp”的目标“MyApp”中)`

我认为这很奇怪,因为我没有使用开发配置文件进行构建,而是使用分发配置文件。这在调用 match/gym 时在构建输出中得到确认,其中没有提及开发配置文件。

在 Xcode 中,在“签名和功能”下,我按照上述指南取消了“自动管理签名”,“调试”设置为使用开发配置文件,“发布”设置为使用分发配置文件

在“调试”部分下将配置文件更改为“发布”是修复我的 CI 构建的原因,但这是为什么呢?当然,我的调试版本应该始终使用开发证书吗?

4

1 回答 1

0

我在 iOS 版本中遇到了类似的问题,最后意识到我需要将 Xcode 中的配置文件与我的 Fastfile 中的配置文件相匹配:

lane :beta do
  begin
    build_number = increment_build_number(...)
    slack(message: "Starting new build " + build_number)

    *** match(type: "appstore") ***

    build_app(
      ...

      *** export_method: "app-store", ***

      build_path: "./builds",
      output_directory: "./builds"
    )
    upload_to_testflight(
      skip_waiting_for_build_processing: true
    )

    slack(
      message: "App successfully published to TestFlight"
    )

  end

Match 会将所需的配置文件下载到机器上,但如果 Xcode 中的“Provisioning Profile”(在 Build Settings -> Signing 中找到)与 Fastfile 不匹配,Xcode 将无法从 Match 中获得所需的配置文件。

于 2020-02-10T20:52:20.547 回答