我已经使用 Application Loader 和 .ipa 文件提交了几个以前版本的应用程序,没有出现问题。当我提交新版本时,我收到两个错误:ITMS-90086“缺少 64 位支持。提交到 App Store 的 iOS 应用程序必须包括 64 位支持,并且使用 iOS 8 SDK 或更高版本构建。我们建议使用Xcode 中“架构”的默认“标准架构”build设置,以构建同时支持 32 位和 64 位的单个二进制文件”和 ITMS-90203“无效架构:包含应用程序扩展和框架的应用程序必须支持 arm64 ".
我正在使用 Xamarin 构建应用程序,我没有任何可能导致 ITMS-90203 的 Objective C 库,而且我没有 Watch 应用程序,我唯一拥有的是共享扩展有很多版本通过了认证。该应用程序被标记为支持 ARMv7 + ARM64。此外,通过的版本与此版本之间没有重大变化。最后,我尝试将代码回滚到有效的版本,更新版本号,但我仍然遇到相同的错误。我也尝试清理项目但没有成功。
因为这似乎是 Apple 服务器上的一个错误,我已经通过 iTunes Connect 提交了这个问题,但我现在仍然被困了第二天所以我想知道是否有人对可能发生的事情有一些想法或一些建议如何解决这个问题。
最佳答案
仔细检查您的 iOS 应用的 csproj
项目文件的版本历史记录。
它应该包含一个如下所示的部分:
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|iPhone' ">
<Optimize>true</Optimize>
<OutputPath>bin\iPhone\Release</OutputPath>
<DefineConstants></DefineConstants>
<ErrorReport>prompt</ErrorReport>
<WarningLevel>4</WarningLevel>
<ConsolePause>false</ConsolePause>
<MtouchArch>ARMv7, ARM64</MtouchArch>
<MtouchI18n>
</MtouchI18n>
<CodesignEntitlements>Entitlements.plist</CodesignEntitlements>
<MtouchUseRefCounting>true</MtouchUseRefCounting>
<CodesignKey>iPhone Distribution</CodesignKey>
<IpaPackageName>
</IpaPackageName>
</PropertyGroup>
重要的部分是 MtouchArch
。
确保使用 Release
目标构建。
您还可以使用以下方法检查您的 dSYM
文件是否包含正确的架构:
dwarfdump -u MyApp.app.dSYM/Contents/Resources/DWARF/MyApp
它位于某处像
~/Library/Developer/Xcode/Archives/<date>/MyApp.iOS <datetime>.xcarchive/dSYMs
关于ios - 有效的包出现 ITMS-90086 + ITMS-90203 错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38904941/