Bitrise现在支持Xcode 9的新exportOptions属性!

我们已经发布了新的Xcode Archive步骤版本(2.2.0),该版本能够自动检测新的exportOptions属性,因此不再需要两周前提供的解决方法。 👻但是,您仍然必须进行一些设置。

问题…

在Xcode 9中,引入了新的必需exportOptions属性: provisioningProfiles ,它描述了应该使用哪个配置文件来签名项目中的哪个目标。 即使Xcode 9在测试版中,我们也使用它创建了一个堆栈,以使我们的用户可以使用Xcode 9测试他们的项目。但是,即使您可以在Bitrise上使用Xcode 9,我们的Xcode存档步骤也无法自动检测到配置文件–捆绑包ID映射(这是新的exportOptions属性),因此导致多个构建失败。

…现在已整理👨

该步骤将像以前一样归档您的项目,此部分没有更改。 步骤从您的项目中生成.xcarchive文件后,它开始收集exportOptions(如果xcode版本> 6)。

从存档导出IPA文件时,您需要定义该步骤应如何导出。 有两个选项,让我们看一下相关示例:

如果设置了custom_export_options_plist_content输入,则该步骤将使用您提供的exportOptions。 故事结束🙂

如果未设置此项,并且export_method设置为auto-detect ,则该步骤将使用嵌入到.xcarchive文件中的配置文件来确定导出方法(如前所述),从现在开始,项目中的每个目标都将是使用此个人资料签名。 (第二)故事的结局。

如果您为export_method输入指定了任何其他导出方法,则此步骤将列出为签名应用程序而配置的每个已安装的配置文件,然后该步骤过滤此列表以查找与指定的导出方法匹配的配置文件。

  • 如果该步骤仅找到1个匹配的配置文件(每个目标),则此配置文件将用于对目标进行签名。 (3.故事的结尾。)
  • 如果多个概要文件与目标和指定的导出方法匹配,则该步骤无法决定要使用哪个概要文件,因此它将失败。 在这种情况下,您应该按照此博客文章中的说明指定custom_export_options_plist_content 。 (3.b故事结束)

编码愉快! 🚀