Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Submitting App with Xcode 7: ERROR ITMS- 90533 Missing Architecture. Extension Bundle requires a UIRequiredDeviceCapabilities value of "arm64"

I'm frantically trying to submit my app for the iOS 9 launch but I'm confronting a weird problem.

When I try to submit my application binary through Xcode 7, I get the following error:

Missing Architecture. The extension bundle requires a UIRequiredDeviceCapabilities value of 'arm64'

What scares me is googling ERROR ITMS-90533 returned no results.


The architecture Build Settings seems to check out as per this stackoverflow question. In both the Project target and Extension target:

  • Architectures is set to Standard Architectures (armv7, arm64) in both the Project target and Extension target

  • Build Active Architecture is set to NO for RELEASE

  • Valid Architectures is set to arm64, armv7, armv7s

enter image description here

I'm not really sure what to do at this point. I've tried playing around with the settings and nothing seems to be working. Any help would be really awesome.

like image 671
Matt Avatar asked Sep 12 '15 01:09

Matt


1 Answers

I managed to upload a similar app (which contains a content blocker extension just as yours) with the following two changes.

First, both Architectures and Valid Architectures only contain arm64.

Second, Info.plist for both the extension and the main app contains the following, restricting this app/extension to 64 bit architectures:

<key>UIRequiredDeviceCapabilities</key>
<array>
    <string>arm64</string>
</array>

Content blocker extensions are supposed to be 64-bit only. Not sure if a mixed 32/64 bit app can also contain a 64-bit-only extension. To be on the safe side, and since the content blocking is anyway the main/only functionality of my app, I made both the app and extension 64bit only.


Update, March 2016. With Xcode 7.2.1, you no longer need to set architecture as one comment below notes. You only need to set required device capabilities and valid architectures. (You can see this being the default setting when you create a new Content Blocker extension with the standard Xcode templates.)

like image 87
Jaanus Avatar answered Nov 11 '22 03:11

Jaanus