更新 OS 和 Xcode 后 Xcode 应用程序分发失败

Posted

技术标签:

【中文标题】更新 OS 和 Xcode 后 Xcode 应用程序分发失败【英文标题】:Xcode app distribution fails after update of OS and Xcode 【发布时间】:2020-05-26 02:03:05 【问题描述】:

在分发我的应用程序时,我在管理器中遇到了这样的错误。该应用程序在模拟器或 iPhone 上的调试模式下构建并正常工作。它也已存档,但我无法通过组织者的开发分发来分发它!

ipatool failed with an exception: #<CmdSpec::NonZeroExitException: $ /Applications/Xcode-beta.app/Contents/Developer/usr/bin/python3 /Applications/Xcode-beta.app/Contents/Developer/usr/bin/bitcode-build-tool -v -t /Applications/Xcode-beta.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin --sdk /Applications/Xcode-beta.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS13.4.sdk -o /var/folders/ls/0vdttqm92zq1rtcsjntc4mxw0000gn/T/ipatool20200210-7826-1kq2c5j/thinned-out/arm64/Payload/CRM\ Dev.app/Frameworks/GoogleUtilities.framework/GoogleUtilities --generate-dsym /var/folders/ls/0vdttqm92zq1rtcsjntc4mxw0000gn/T/ipatool20200210-7826-1kq2c5j/thinned-out/arm64/Payload/CRM\ Dev.app/Frameworks/GoogleUtilities.framework/GoogleUtilities.dSYM --strip-swift-symbols /var/folders/ls/0vdttqm92zq1rtcsjntc4mxw0000gn/T/ipatool20200210-7826-1kq2c5j/thinned-in/arm64/Payload/CRM\ Dev.app/Frameworks/GoogleUtilities.framework/GoogleUtilities
Status: pid 8359 exit 2
Stdout:
    SDK path: /Applications/Xcode-beta.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS13.4.sdk
    SDK version: 13.4

更新

如果我取消选中 Rebuild form bitcode 然后它会分发。但是如果我想将应用分发到 App Store,我认为以后可能会出现问题?

【问题讨论】:

您好 Michał Ziobro,您找到解决此问题的方法了吗?如果是这样,你介意分享吗?谢谢 【参考方案1】:

需要检查 Apple 启动的传输器应用程序,以将应用程序上传到应用商店 https://developer.apple.com/news/?id=10152019a。会有帮助的

【讨论】:

【参考方案2】:

ios 13.4 是测试版。应用商店不接受使用 beta 版本创建的构建。

【讨论】:

它不是用于应用商店,而是用于开发构建的 Firebase 分发 iOS 13.2 也是如此,我使用最新的 Xcode beta 版本和来自 App Store 的最新 Xcode 更新测试了这个存档。【参考方案3】:

我们遇到了类似的问题,描述为here。无需在没有位码的情况下进行分发。长话短说,其中包含 LLVM 工具,这会阻止 AppStore 处理。我写了一篇关于 XCode 12 and BigSur issues with XCFramework 的完整博客。

总而言之,在创建XCFramework 进行分发时,需要确保以下几个步骤:

必须使用归档构建,发布构建还不够 BUILD_LIBRARY_FOR_DISTRIBUTION 必须设置为 YES SKIP_INSTALL 必须设置为 NO GCC_INSTRUMENT_PROGRAM_FLOW_ARCS = NO 关闭 GCC 检测并将其从二进制文件中删除 CLANG_ENABLE_CODE_COVERAGE = NO 从二进制文件中关闭代码覆盖工具

以上所有内容有助于解决我们的准备和分发问题,如果您碰巧遇到与我们相同的问题,希望能为您节省一些时间。

【讨论】:

以上是关于更新 OS 和 Xcode 后 Xcode 应用程序分发失败的主要内容,如果未能解决你的问题,请参考以下文章

更新到 Xcode 13 后出现错误破坏了应用程序

MobileDevice.pkg 不受信任,在 OS X 更新后无法打开 Xcode

Xcode 13 - swift OS 15 中的导航栏和状态栏文本颜色变化

由于我的 iMAC(2011 年中)Apple 不提供更新,基于 Swift 的应用程序是不是可以在 OS 版本 10.13.6(High Sierra)和 xcode 版本 9.4.1 上运行

Xcode 5 Cocoa 应用程序无法在 OS X 10.6 上加载 Nib

Xcode10更新内容