UIDesignRequiresCompatibility and iOS 27

Hoping to get some clarification here around how the Liquid Glass opt-out via the UIDesignRequiresCompatibility Info.plist flag works with iOS 27. During the Platforms State of the Union at least year's WWDC, it was mentioned that this flag wouldn't be respected on iOS 27. Is this a case where it's not respected for any app that's downloaded from the App Store regardless of if they were compiled against the iOS 27 SDK, or does this only apply for apps compiled with the iOS 27 SDK (and thus any app compiled with an older SDK would still get the previous design styling)?

Answered by Frameworks Engineer in 892149022

The UIDesignRequiresCompatibility Info.plist opt-out flag will no longer be honored on iOS 27 once an app is built against iOS 27. Apps built against earlier releases will not change until building against iOS 27.

It's tied to the SDK you compile against, not the runtime OS.

Apps compiled against the iOS 27 SDK get Liquid Glass, and the compatibility flag is no longer respected for them. Apps still compiled against an older SDK keep the previous design on iOS 27, because the system keys design behavior off the linked SDK version.

So: an older-SDK build from the App Store should still get the previous design on iOS 27. It's recompiling against the iOS 27 SDK that disables the opt-out and moves you to Liquid Glass automatically.

Same pattern Apple has used for past major UIKit changes — gate on linked SDK so existing binaries don't shift under users, new builds adopt the new default.

Worth confirming with a UIKit engineer here, but that's the established behavior.

— Divya Ravi, Senior iOS Engineer

Accepted Answer

The UIDesignRequiresCompatibility Info.plist opt-out flag will no longer be honored on iOS 27 once an app is built against iOS 27. Apps built against earlier releases will not change until building against iOS 27.

Awesome, thanks for the clarification!

UIDesignRequiresCompatibility and iOS 27
 
 
Q