<!--
{
  "availability" : [
    "iOS: 3.0.0 -",
    "iPadOS: 3.0.0 -",
    "tvOS: 9.0.0 -",
    "visionOS: 1.0.0 -",
    "watchOS: 2.0.0 -"
  ],
  "documentType" : "symbol",
  "framework" : "BundleResources",
  "identifier" : "/documentation/BundleResources/Information-Property-List/UIRequiredDeviceCapabilities",
  "metadataVersion" : "0.1.0",
  "role" : "Property List Key",
  "symbol" : {
    "kind" : "Property List Key",
    "modules" : [
      "Bundle Resources"
    ],
    "preciseIdentifier" : "plist:Information_Property_List.UIRequiredDeviceCapabilities"
  },
  "title" : "UIRequiredDeviceCapabilities"
}
-->

# UIRequiredDeviceCapabilities

The device-related features that your app requires to run.

## Discussion

The App Store prevents customers from installing an app on a device that doesn’t support the required capabilities for that app. Use this key to declare the capabilities your app requires. For a list of the features that different devices support, see [Required Device Capabilities](https://developer.apple.com/support/required-device-capabilities/).

You typically use an array for the key’s associated value. The presence in that array of any of the above possible values indicates that the app requires the corresponding feature. Omit a value to indicate that the app doesn’t require the feature, but it can be present.

Alternatively, you can use a dictionary as the associated value for the [`UIRequiredDeviceCapabilities`](/documentation/BundleResources/Information-Property-List/UIRequiredDeviceCapabilities) key. In that case, use the values above as the dictionary’s keys, each with an associated Boolean value. Set the value to `true` to require the corresponding feature. Set the value to `false` to indicate that the feature must not be present on the device. Omit the feature from the dictionary to indicate that your app neither requires nor disallows it.

Specify only the features that your app absolutely requires. If your app can accommodate missing features by avoiding the code paths that use those features, don’t include the corresponding key.

> Important:
> Your app must include the ``doc://com.apple.bundleresources/documentation/BundleResources/Information-Property-List/UIRequiredDeviceCapabilities`` key in the ``doc://com.apple.bundleresources/documentation/BundleResources/Information-Property-List`` file that you submit with your binary. For app updates, you can only maintain or relax capability requirements. Submitting an update with added requirements would prevent some customers who previously downloaded your app from running the update.

---

Copyright &copy; 2026 Apple Inc. All rights reserved. | [Terms of Use](https://www.apple.com/legal/internet-services/terms/site.html) | [Privacy Policy](https://www.apple.com/privacy/privacy-policy)