All of ARKit supports only A9 and up, including AROrientationTrackingConfiguration
. As they say at the top of the ARKit docs...
Important
ARKit requires an iOS device with an A9 or later processor.
To make your app available only on devices supporting ARKit, use the arkit key in the UIRequiredDeviceCapabilities
section of your app's Info.plist. If augmented reality is a secondary feature of your app, use the isSupported property to determine whether the current device supports the session configuration you want to use.
So you can indeed make an iOS 11 app that's available only on a subset of iOS 11 devices. Requiring something in UIRequiredDeviceCapabilities
makes the App Store not offer your app on devices you don't support, and makes iTunes refuse to install the app.
(Yeah, it looks like Apple took a bit to get their story straight here. Back at WWDC it looked like they'd support 3DOF tracking on lesser devices, but now you need A9 even for that.)
So what's the point of AROrientationTrackingConfiguration
now?
For some kinds of app, it might make sense to fall back from world tracking (6DOF) to orientation-only tracking (3DOF) when current conditions don't allow 6DOF. That doesn't make much sense for apps where you put virtual objects on tables, but if you're just putting space invaders in the air for your player to shoot at, or using AR to overlay constellations on the sky, losing 6DOF doesn't wreck the experience so much.