使用健身房创建 ipa 时,Fastlane 无法正常工作

Posted

技术标签:

【中文标题】使用健身房创建 ipa 时,Fastlane 无法正常工作【英文标题】:Fastlane not working when creating ipa with gym 【发布时间】:2018-09-07 10:39:33 【问题描述】:

我正在使用 Fastlane 自动生成 IPA。我有一个配置文件和一个来自我是成员(但不是管理员)的团队的生产证书。

当我尝试使用 Fastlane 生成 IPA 时出现问题,它找不到证书并尝试下载新证书。由于我不是管理员,所以不能下载其他证书,操作返回错误。

我尝试添加选项“skip_certificate_verification”,希望验证失败,但如果继续可以签名。这样做会发生一些有趣的事情,因为似乎整个生成过程都被执行了,甚至文件也出现在 Xcode 的 Organizer 窗口中,但返回错误说它没有找到这个 id 应用程序的配置文件(即使在操作开始时,日志显示配置文件已正确下载并安装)。

这是我的快速文件

default_platform(:ios)

platform :ios do

  lane :docuten_release do
      sigh(development:false,
        cert_id:"CERTID",
        filename:"my_profile.mobileprovision",
        ignore_profiles_with_different_name:true,
        skip_certificate_verification:true)
      gym(
        scheme: "MyScheme",
        workspace: "myapp.xcworkspace",
        output_directory: ".",
        configuration: "Release"
      )
  end

end

在日志中搜索主要错误似乎是:

代码签名错误:未找到“com.company.myapp”的配置文件:Xcode 找不到任何与“com.company.myapp”匹配的 iOS 应用开发配置文件。自动签名已禁用,无法生成配置文件。要启用自动签名,请将 -allowProvisioningUpdates 传递给 xcodebuild。 代码签名错误:SDK“iOS 11.3”中的产品类型“应用程序”需要代码签名

【问题讨论】:

由于您不是苹果开发者门户的管理员,因此您无法生成配置文件。而且我认为已经存在的配置无效(或过期)。所以请检查配置的有效性,并要求管理员更新配置。 感谢您回答@Mourad。个人资料尚未过期,但我问自己是否由于其他原因不正确。该配置文件是一个发行版,xcode 日志显示“Xcode 找不到任何 iOS App DEVELOPMENT 配置文件”。也许 fastlane 正在寻找开发配置文件而不是分发配置文件?我的配置有什么问题导致这种行为?我确实在“叹息”时将“开发”选项设置为 false。 【参考方案1】:

您的 Xcode 项目中是否启用了“自动管理签名”?如果是,您需要将export_xcargs: "-allowProvisioningUpdates" 添加到您对gym 的调用中,如Fastlane Docs 中所述。

在呈现给您的错误消息中也有说明?

要启用自动签名,请将 -allowProvisioningUpdates 传递给 xcodebuild。代码签名错误:SDK“iOS 11.3”中的产品类型“应用程序”需要代码签名

【讨论】:

以上是关于使用健身房创建 ipa 时,Fastlane 无法正常工作的主要内容,如果未能解决你的问题,请参考以下文章

添加 cocoapods 依赖项后,Fastlane 健身房失败

如何使用 fastlane 将 .ipa 文件分发到 TestFlight

Fastlane - 覆盖输出名称

无法上传嵌入了内部动态框架的 IPA

Fastlane:将工件发送到外部组

trigger.io - 无法再创建 ipa 文件