2016-06-07 181 views
6

上周我能够将我的ipa上传到iTunesConnect就好了。上传到iTunesConnect时突然出现错误:ITMS-90635 Mach-O格式无效/ ENABLE_BITCODE

ERROR ITMS-90635: "Invalid Mach-O Format. The Mach-O in bundle "Application.app/Frameworks/PSPDFKit.framework" isn’t consistent with the Mach-O in the main bundle. The main bundle Mach-O contains armv7(machine code) and arm64(machine code), while the nested bundle Mach-O contains armv7(bitcode and machine code) and arm64(bitcode and machine code). Verify that all of the targets for a platform have a consistent value for the ENABLE_BITCODE build setting."

我知道这里提出的解决方案:Xcode - Error ITMS-90635 - Invalid Mach-O in bundle - submitting to App store和其他许多人,但到今天为止,我通过加载应用程序上传时收到以下错误。

我不知道如何将任何建议的解决方案应用于Xamarin iOS项目。我没有使用任何豆荚,而是我正在使用PSPDFKit的Binding库,这是我在官方文档https://pspdfkit.com/guides/ios/current/other-languages/xamarin/中描述的创建的。

据我所见,有两种方法可以去我的项目中启用位码(我不知道该怎么做),或者禁用PSPDFKit绑定项目中的位码(我有也不知道该怎么办)。

我很感激任何帮助或建议。

+0

为您的项目禁用位码。编译设置> Build选项>启用BitCode>设置为NO - 这是Xcode,不知道如何在Xamarin IDE中做到这一点。 –

+0

似乎Apple最近提交了一个更改。由于您的库有位代码,请在您的主应用程序'.csproj'中尝试此操作,但将其设置为'true' http://stackoverflow.com/a/37684483/4984832 – SushiHangover

+0

感谢您的建议。我将MtouchEnableBitcode属性设置为true,但显然Xamarin iOS不支持,因为我在编译期间收到此错误消息。 /Library/Frameworks/Mono.framework/External/xbuild/Xamarin/iOS/Xamarin.iOS.Common.targets:错误:执行任务MTouch时出错:iOS代码目前不支持。 –

回答

0

我终于能够从这篇文章做到这一点,与解决方案的一个https://stackoverflow.com/a/37624641/2702513

什么我不这样做,从我的图书馆,可以用这个命令来完成剥位码:

$ xcrun bitcode_strip -r {PATH_TO_LIBRARY} -o tmp.dylib 

该命令将库中的机器代码提取到tmp.dylib文件中,然后可以使用它来代替库本身。在PSPDFKit的情况下,库在框架内。

相关问题