我正在尝试通过CircleCI上的fastlane构建我的react native应用。我正在使用match来管理证书/配置文件,并使用以下指南:
https://docs.fastlane.tools/best-practices/continuous-integration/circle-ci/
https://circleci.com/docs/2.0/testing-ios/#example-configuration-for-using-fastlane-on-circleci
[fastlane ios beta
在本地工作。
但是,在CI上,我发现安装程序无法构建,并出现以下错误:
error: No profile for team '...' matching 'match Development app.my' found: Xcode couldn't find any provisioning profiles matching '.../match Development app.my'. Install the profile (by dragging and dropping it onto Xcode's dock item) or select a different one in the Signing & Capabilities tab of the target editor. (in target 'MyApp' from project 'MyApp')
我以为这很奇怪,因为我的构建不是使用开发配置文件,而是使用了[[distribution配置文件。当调用match / gym时,在构建输出中对此进行了确认,其中未提及开发配置文件。
在xcode中,在“签名和功能”下,根据上述指南,我具有“自动管理签名”未选中
,其中“调试”设置为使用开发配置文件,而“发布”设置为使用分发配置文件。将配置文件更改为“调试”部分下的“发行版”是我的CI构建的固定功能,但是为什么呢?我的调试版本肯定应该始终使用开发证书吗?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"
)
...
Match会将所需的配置文件下载到计算机,但是如果xCode中的“ Provisioning Profile”(在Build Settings-> Signing中找到)与Fastfile不匹配,则xCode不会从Match中获得所需的配置文件