Xcode停留在嵌入配置文件中

时间:2018-04-11 07:43:02

标签: xcode provisioning-profile

今天我将我的Xcode更新为版本9.3(9E145)。之后我创建了一个存档,现在我正在尝试将其导出以进行开发。但是我看到Xcode陷入了以下一步:

XCode message

这是Xcode 9.3的错误吗?我该如何解决?

4 个答案:

答案 0 :(得分:29)

Xcode似乎在显示此消息时重新编译bitcode,因此可能需要很长时间才能“嵌入配置文件”。如果耐心等待很长时间,取决于代码库的大小(包括来自Carthage或Cocoapods的依赖关系),它最终会继续。

@ AllanWeir的答案明确禁用了bitcode编译,建议在plist文件中这样做,所以时间的改善似乎是一个无意的副作用。 “修复”这不需要使用命令行导出。

我认为之前的Xcode版本在bitcode重新编译期间提供了更多有用的状态。

您可以通过UI在Xcode导出期间禁用bitcode编译,它将不再“卡住”。

enter image description here

答案 1 :(得分:2)

在Xcode 9.3上也出现了这个问题,看起来终端上的xcodebuild工作正常。

您可以通过运行(替换存档路径)

来导出存档
xcodebuild -exportArchive -archivePath "YOUR_XCODE_ARCHIVE_FOLDER/YOUR_ARCHIVE.xcarchive" -exportPath "output/"  -exportOptionsPlist "ExportOptions.plist"

您需要设置一个至少包含以下内容的ExportOptions.plist文件:

  • '方法'设置为应用商店','企业' ad-hoc'或者' development'
  • ' compileBitcode'设为FALSE
  • 对于手动签名,您需要添加您的团队和配置详细信息

有关导出选项的更多信息,请访问EXPORT .XCARCHIVE TO .IPA USING XCODEBUILD...

我的ExportOptions.plist看起来像(替换捆绑包ID,配置文件,团队ID以及可能的signedCertificate值):

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
    <key>compileBitcode</key>
    <false/>
    <key>method</key>
    <string>enterprise</string>
    <key>provisioningProfiles</key>
    <dict>
        <key>COM.YOUR-BUNDLE-ID</key>
        <string>YOUR PROVISIONING PROFILE NAME</string>
    </dict>
    <key>signingCertificate</key>
    <string>iPhone Distribution</string>
    <key>signingStyle</key>
    <string>manual</string>
    <key>teamID</key>
    <string>YOUR TEAM ID</string>
</dict>
</plist>

答案 2 :(得分:2)

Xcode版本9.3.1 (9E501)

至于我,我需要等待一段时间(大约3-5分钟)才能最终重新编译bitcode。看起来你必须等待一段时间才能完成它。

答案 3 :(得分:1)

我在xcode 9.4上。我的代码库也很大。

我的矿花大约20分钟出口。 但是就像@Allen Humphreys提到的那样,如果未选中选项“从位码重建”,它将快速导出(对我来说只需一两分钟)。