iPA构建失败,发生异常-NonZeroExcitException,同时准备进行质量检查测试/ AdHod的构建

时间:2019-07-29 15:56:26

标签: ios xcode build adhoc ipatool

每次造访我都无法建立ipa

  • Xcode 10.2
  • iOS 10
  • 雨燕5

  • 我为AdHoc创建了新的发行证书和配置文件

  • 关闭了应用细化功能,但仍然没有运气。

  • 即使在多个论坛上都看过类似的问题后也是如此 我尝试了多种技巧,但结果是相同的。

只要有些人发现下面的错误消息,就可以绕线

此版本有什么问题

enter image description here

完整的错误消息文本为:

“ ipatool失败,发生以下异常:CmdSpec :: NonZeroExcitException:命令以pid 19900退出退出1: /Applications/Xcode.app/Contents/Developer/usr/bin/bitcode-build-tool -v -t /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin --sdk / Applications / Xcode.app/内容/开发人员/平台/iPhoneOS.platform/Developer/SDKs/iPhoneOS12.2.sdk -o / var / folders / f4 / wbk3bb9500s8527_0_ncx1r40000gn / T / ipatool20190729-17893-1r436rx / thinned-out / armv7 / Payload LanguageCurry.app/Frameworks/CardinalMobile.framework/CardinalMobile --generate-dsym /var/folders/f4/wbk3bb9500s8527_0_ncx1r40000gn/T/ipatool20190729-17893-1r436rx/thinned-out/armv7/Payload/LanguageCurry.app/Frameworks /CardinalMobile.dSYM --strip-swift-symbols /var/folders/f4/wbk3bb9500s8527_0_ncx1r40000gn/T/ipatool20190729-17893-1r436rx/thinned-in/armv7/Payload/LanguageCurry.app/Framework/CardinalMobile。 标准输出:     调试:SDK路径:/Applications/Xcode.app/Contents/Dev“

PS:我正在使用以下一组豆荚

pod 'Alamofire', '~> 4.5'
  pod 'GoogleSignIn'
  pod 'JVFloatLabeledTextField'
  pod 'Braintree'
  pod 'BraintreeDropIn'
  pod 'CTShowcase'
  pod 'Fabric'
  pod 'Crashlytics'
  pod 'Firebase/Core'
  pod 'SwiftyStoreKit'
  pod 'OneSignal', '>= 2.6.2', '< 3.0'

2 个答案:

答案 0 :(得分:0)

花了3天后,我找到了解决该问题的方法。

某些第三方Pod不支持由于App Thinning和Bitcode功能导致的构建失败 ,因为它们的代码版本已过时。


所以我不得不在我的ipa中关闭这些功能。

第1步。转到项目设置并关闭启用位码选项

enter image description here


第2步。在构建ipa时关闭 App Thining

enter image description here

答案 1 :(得分:0)

我们遇到了类似的问题,我描述了 here,我只是不想分享我们的调查结果,因为似乎没有人公布他们的结果。 没有位码就不需要分发。长话短说,其中包含 LLVM 检测,这会阻止 AppStore 处理。我写了一篇关于 XCode 12 and BigSur issues with XCFramework 的完整博客。

总而言之,在创建 method = "loess" 以进行分发时,需要执行以下几个必要步骤:

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

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