Ivan I
Ivan I

Reputation: 9990

ITMS-90086 + ITMS-90203 errors on the package that worked

I have submitted several previous versions of the app using Application Loader and .ipa file without the problem. As I am submitting the new version I am getting two errors: ITMS-90086 "Missing 64-bit support. iOS apps submiteed to the App Store must include 64-bit support and be built with the iOS 8 SDK or later. We recommend using the default "Standard Architectures" build setting for "Architectures" in Xcode, to build a single binary with both 32-bit and 64-bit support" and ITMS-90203 "Invalid architecture: Apps that include an app extension and framework must support arm64".

I am using Xamarin to build the app, and I don't have any Objective C library which could result in the ITMS-90203, and I don't have a Watch app, the only thing I have is Share extension that was there in many versions that have passed the certification. The app is marked to support ARMv7 + ARM64. Also there were no major changes between the versions that passed and this version. Finally I have tried to roll back code to the version that worked, update the version number and I still get the same error. I have also tried cleaning the project with no success.

As this seems like an error on Apple servers, I have submitted the issue via iTunes Connect, but I am still stuck now for a second day so I would like to know if someone has some idea on what might be happening or some suggestion how one could work around this.

Upvotes: 0

Views: 650

Answers (1)

Thibault D.
Thibault D.

Reputation: 10004

Double-check the version history of the csproj project file for your iOS app.

It should contain a section that should look like:

  <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>

The important part being the MtouchArch.

Make sure you build using your Release target.

You can also check that your dSYM file contains the right architectures using:

dwarfdump -u MyApp.app.dSYM/Contents/Resources/DWARF/MyApp

That is located somewhere like

~/Library/Developer/Xcode/Archives/<date>/MyApp.iOS <datetime>.xcarchive/dSYMs

Upvotes: 1

Related Questions