iOS 10 is no longer supported (4.23)

As of 4.23, we have removed support for iOS 10 and will be focusing our development efforts on more recent and future iOS versions. iOS 10 will continue work in engine versions prior to 4.23.

Feel free to use this thread for discussions related to iOS versions. We appreciate your feedback!

We have recently found that using XCode 11 and 4.22.3, that the same build will work on devices using iOS 12.4.1, but fails to load on iOS 13. Are there some extra settings or changes that need to be made in order to have the package also work for iOS 13?

I’m not sure if UE4 is ready for iOS 13 yet. I know that the source to UE4.22 does NOT build with the latest Xcode.
I have not tried the source to 4.23.

Here’s how you install the previous version of XCode side by side:…e-e331c01aa6bc

I wasn’t able to compile metal shaders with XCode 11.

I do have a small AR project that I edit with 4.23 on macOS (10.14.6), and launch in development or shipping mode to two devices running iOS 13 (13.1.2 as of yesterday), an iPhone 8+ and an iPad Pro 12.9. Xcode is version 11.0. I can tell, yet vaguely, that things have changed with iOS 13.1. I haven’t kept a precise log of the hindrances, but there were a few. It ended working mostly through a weird workflow that makes me relaunch twice in a row, ignoring the first fail and without altering the project. On the device side, a successful launch may mean that the device has to be rebooted for the app to work a first time (I think it has to see with camera use permissions), but it has also happened that the launch yielded a crashing app (this is probably linked to the project itself). So, it… works. Laboriously and cryptically (the error messages in the log don’t seem to always point at the real problem – read following caveat).

Before 13.1.2, a launch procedure could generate a separate console during the process. It would keep exchanging and monitoring the device even while it was running. This seems to have disappeared. It feels almost normal and I’m almost happy although it is time consuming and without a clear path to a straight deterministic way of doing things.

I’m new to Unreal and AR/VR in general (hence my choice of words, for one thing). I know almost nothing about Xcode apart from keeping it updated and using it once in a while to install and delete apps from devices or have a look a certificates (the management of which is also something, but that’s another story).

Same here. Our project built with XCode 11 and 4.22.3 crashes on boot (as soon as the standard Unreal logo disappears, so about 1 second after tapping the app icon to start it) on iOS 13.2 but worked fine on when the same device was on 12.x yesterday. We updated the device to iOS 13 as we need the new bluetooth controller functionality.

Looks like it’s due to NSInternalInconsistencyException reason: ‘threading violation: expected the main thread’

Anyone have any suggestions on how to fix this? Surely we’ll all have the same issue on iOS 13 devices when using 4.22.3 and XCode 11?

EDIT: For information, we managed to fix this by moving to 4.23.1
However, we also had to remove our online plugin (Gamesparks) as that has an invalid build.cs for 4.23.1 (looks like switch statements are no longer valid). Even after fixing the build.cs it won’t link due to something somwehere causing it to be an x86_64 lib so we removed it.
Upshot is , the fix was either moving to 4.23.1 (likely) or removing our Online plugin.