The app's Info.plist can't contain values for the UIRequiredDeviceCapabilities key
Asked Answered
P

4

20

"The app's Info.plist can't contain values for the UIRequiredDeviceCapabilities key that would prevent this app from opening on any iOS device. For more information, see Understanding the UIRequiredDeviceCapabilities Key."

I keep getting this error when trying to submit the app for review on iTunes Connect.

I'm using: Xcode 6.1.1, Application Loader 3.0, LiveCode 6.7 (tried with 7.0.1 as well, same result)

Build for iOS:

  • iPod and iPhone 4.3 or later
  • Location Authorization Type: Always (options are greyed out here and can't be changed...)
  • Requirements and Restrictions: Required- Auto-focus Camera/Still Camera, WiFi

In my app, I'm using mobilePickPhoto to snap and get photo from library.

Please let me know if anyone have encountered the same issue before...

Thank you.

Phares answered 23/1, 2015 at 9:52 Comment(3)
For those coming here there is an active discussion on the developer forums about this devforums.apple.com/message/1137785#1137785Rocco
K it looks like this issue is only happening to users trying to update old (2012) appsRocco
I got this right now, trying to submit version 1.2 of an existing app (1.0 and 1.1 were/are in store). I have not touched this key since 1.0 (=ever). The only value that is in there is "gamekit"... there was never any reason for it being there, but I'm going to remove that and resubmit. Not sure why iTC complained about it now however cause it never did before.Becker
K
23

I removed <string>armv7</string> from the array in UIRequiredDeviceCapabilities in info.plist and now my status is waiting for review. Seems like it was a iTunes Connect-bug in my case

Karl answered 2/6, 2015 at 14:34 Comment(1)
was doing this successful, as you said now my status is waiting for reviewLennalennard
S
10

When updating an app, it seems you cannot add new restrictions to the Required Device Capabilities. The automatic validation service that Apple has integrated into Xcode will reject any update with more restrictive UIRequiredDeviceCapabilities than the earlier version before you can even upload it to iTunes Connect.

http://oleb.net/blog/2011/12/uirequireddevicecapabilities-cannot-be-changed-in-app-updates/

Schwann answered 5/10, 2015 at 2:44 Comment(1)
This is the most concise and accurate explanation and cleared it up for me.Painless
P
2

I didn't need any hardware checking with my similar issue but removing UIRequiredDeviceCapabilities completely and changing the project format to 6.3 compatible seemed to get around this issue for me.

Mine was an old project, originally set to Xcode 3.2 compatible.

Priestess answered 29/6, 2015 at 17:36 Comment(0)
L
1

It looks to me like auto-focus-camera and still-camera are mutually-exclusive.

From the reference:

auto-focus-camera Include this key if your app requires (or specifically prohibits) autofocus capabilities in the device’s still camera. Although most developers should not need to include this key, you might include it if your app supports macro photography or requires sharper images in order to perform some sort of image processing.

still-camera Include this key if your app requires (or specifically prohibits) the presence of a camera on the device. Apps use the UIImagePickerController interface to capture images from the device’s still camera.

I would imagine that auto-focus-camera implies still-camera, so I would remove still-camera as a requirement. This is just a guess, however.

Landed answered 23/1, 2015 at 10:16 Comment(1)
I had to completely remove UIRequiredDeviceCapabilities key in order for my app to be submitted for review. In my case it only had the value "armv7" - which is irrelevant anyway if you are building with the iOS 8 SDK. (Since you cannot install iOS8 on iOS devices with armv6.)Flagman

© 2022 - 2024 — McMap. All rights reserved.