App Review Help

App Review / Before submitting for review / Test your app on compatible devices

Before submitting for review

Test your app on compatible devices

App Review evaluates apps the way your users will use them: installed on real devices and connected to networks with real-world conditions. Users expect the app to function on all the devices where it's available. Make sure your pre-submission testing includes running the app on each device platform where it could be used, not just in simulated environments. It will also be easier to identify and resolve these issues early than if they were to occur during review.

Use TestFlight for beta testing

TestFlight makes it easy for testers to provide feedback after running your app on real devices:

The first build you add to a group with external testers is sent to App Review to make sure it follows the App Review Guidelines. Later builds in the same group may not need a full review.

Understand device compatibility

Apple platforms make it easy to distribute your app to a variety of compatible devices, so it's important to maximize your app experience on each platform you support. There are many ways an app built for one Apple device can run on other Apple devices:

  • Apps designed for iPhone can run on iPad in compatibility mode if there are no dependencies on iPhone device capabilities.

  • Compatible iPhone and iPad apps can run unmodified on Macs with Apple silicon.

  • Compatible iPhone and iPad apps can run unmodified on Apple Vision Pro.

Xcode provides options to configure settings for apps on multiple platforms. You can specify which platforms your app's target supports in the Supported Destinations field.

Note: People may still be able to run your app on a device even if you remove or don't include the device as a supported destination in Xcode. For example, as long as an app designed for iPhone doesn't depend on a capability that's only available on iPhone, it can be downloaded from the App Store onto iPad. Adding or removing iPad as a supported destination in Xcode won't change that app's availability on iPad.

Follow compatibility best practices

Plan and test for compatibility modes so your app works on every device on which it can be downloaded.

Do

  • Use Xcode simulators to verify basic functionality across different device types.

  • Leverage TestFlight with external testers who have access to a wide range of Apple devices.

Don't

  • Don't submit for review without testing your app's behavior in compatibility modes.

  • Don't assume removing a supported destination in Xcode prevents distribution to that device type.

Build adaptive interfaces that work across device variations.

Do

  • Build interfaces that respond to different screen sizes and orientations.

  • Adapt features based on available hardware, providing alternatives for a consistent experience.

Don't

  • Don't design rigid interfaces that assume only one type of device or input method.

  • Don't let your app crash or become unusable when optional hardware is unavailable.

Restrict device distribution

Wherever possible, make your app available on multiple platforms to increase its reach and provide people with a consistent experience across devices. But there are cases where it makes sense to restrict an app's availability. For example: