Clarification on the planned removal of UIDesignRequiresCompatibility

Dear Apple Developer Support,

I am developing and maintaining an iOS application.

In iOS 26, we understand that setting UIDesignRequiresCompatibility to true in the Info.plist file allows an app to opt out of the Liquid Glass design.

However, we also understand that during WWDC25 Platforms State of the Union, Apple stated:

"We intend this option to be removed in the next major release."

We would appreciate clarification on the following points.

Questions

Should the phrase "next major release" be interpreted as iOS 27?

Is it currently Apple's plan to make UIDesignRequiresCompatibility unavailable or remove it in iOS 27? Or is the statement above only an intended direction, with the actual removal schedule still subject to change? If there is any publicly shareable information regarding the future availability or deprecation timeline of UIDesignRequiresCompatibility, could you please provide it?

Background

We develop and maintain a business application that contains a large number of custom screens and UI components.

Adapting the entire application to the Liquid Glass design system will require significant design review, implementation effort, and testing. As a result, the future availability of UIDesignRequiresCompatibility is a critical factor in our development planning and resource allocation.

For this reason, we would greatly appreciate any guidance you can provide regarding Apple's current plans for this compatibility option.

Thank you for your time and assistance.

Best regards, Toshiyuki

Answered by DTS Engineer in 895540022

Hello @ToshiyukiTakeda,

Thank you for reaching out on the Developer Forums.

What exactly does "build for iOS 27 or later" mean in this context?

“Build for iOS 27 or later” in this context refers to linking the application against the 27 SDK. That means building with Xcode using the iOS 27 SDK as the base SDK. It does not refer to setting the deployment target to iOS 27 or running the application on an iOS 27 device.

If an application is built using Xcode 26 and the iOS 26 SDK, will UIDesignRequiresCompatibility continue to function when that application runs on iOS 27?

Yes. An application linked against the iOS 26 SDK will have UIDesignRequiresCompatibility honored by the system even when running on an iOS 27 device. The system ignores this key only when the application is linked against the iOS 27 SDK or later. At runtime, the system makes use of what are called “linked on or after” checks, where the behavior of a given key or API may change depending on which SDK version the app was linked against. These checks exist to maintain compatibility so that significant changes in behavior only take effect after the app has been built against a new SDK version.

App Store Requirements:

Apple requires new and updated submissions to the App Store to be built with the current SDK. You're right that the pattern has been very consistent. That said, Apple has not officially announced the iOS 27 SDK requirement date yet.

An official source to watch for this date is: Upcoming Requirements

Adopting UIScene:

There is a second SDK-gated behavior that I want to make sure you are accounting for as well:

If your application uses the UIApplicationDelegate lifecycle and has not adopted UIScene, building against the iOS 27 SDK will cause it to fail to launch. This is governed by the same linked-on-or-after mechanism as UIDesignRequiresCompatibility.

See: Migrate TN3187: Migrating to the UIKit scene-based life cycle

"In the next major release following iOS 26, UIScene lifecycle will be required when building with the latest SDK; otherwise, your app won't launch."

I hope this information is helpful. Thank you all for chiming in.

 Travis

In some cases, liquid glass creates problems because buttons take a much larger space.

Here is an example with navigation items.

Prior LiquidGlass (UIDesignRequiresCompatibility = true)

Everything fits without problem.

With LiquidGlass (UIDesignRequiresCompatibility = false)

Text is clipped as there is no more room for it as buttons are much wider.

Adapting a lot of screens may require significant design changes.

In this case, there is an option (not optimal, but working), by adapting the font size (https://stackoverflow.com/questions/62589078/automatically-adjust-navigation-item-title-font-size-to-fit).

        let title = NSLocalizedString("xxx.xxx.xxx.title", tableName: "Main", comment: "") // Retrieve the original title
        let navbarTitle = UILabel()
            navbarTitle.text = title
            navbarTitle.minimumScaleFactor = 0.5
            navbarTitle.adjustsFontSizeToFitWidth = true
            navigationItem.titleView = navbarTitle

Thank you for sharing your experience with Liquid Glass.

I understand the UI issues you described, and they are certainly important for developers planning migration work.

However, my primary question is not about the migration effort itself, but about Apple's current plan for UIDesignRequiresCompatibility.

Specifically, I would like clarification from Apple on whether the statement

"We intend this option(UIDesignRequiresCompatibility)to be removed in the next major release."

still reflects Apple's current plan, and whether "the next major release" should be interpreted as iOS 27.

This information is important for planning the migration schedule of our application.

In fact, it is very clear in Xcode documentation:

Warning Temporarily use this key while reviewing and refining your app’s UI for the design in the latest SDKs.

The system ignores this key when you build for iOS 27 or later, iPadOS 27 or later, Mac Catalyst 27 or later, macOS 27 or later, or tvOS 27 or later.

Thank you, Claude31.

The documentation you pointed me to was extremely helpful and appears to answer my original question regarding the planned removal of UIDesignRequiresCompatibility.

For context, I am responsible for an enterprise VoIP application that is currently scheduled to reach end-of-sale on March 31, 2027.

Migrating this application to fully support Liquid Glass would require substantially more work than simple font-size adjustments and would likely take approximately two months of development and testing effort.

Because the application is approaching its planned end-of-sale date, we are trying to determine whether a full Liquid Glass migration is justified, or whether it would be reasonable to continue using UIDesignRequiresCompatibility until the product reaches end of life.

Because of that, I would like to better understand the exact meaning of the following statement:

"The system ignores this key when you build for iOS 27 or later..."

Could someone clarify the following points?

  1. What exactly does "build for iOS 27 or later" mean in this context?

    • Building with the iOS 27 SDK?
    • Setting the deployment target to iOS 27?
    • Or simply running the application on iOS 27 devices?
  2. If an application is built using Xcode 26 and the iOS 26 SDK, will UIDesignRequiresCompatibility continue to function when that application runs on iOS 27?

Understanding this distinction is important for our migration planning and end-of-life strategy.

Thank you.

@ToshiyukiTakeda

  1. It means building with the iOS 27 SDK, compiling your app using Xcode 27.
  2. Yes - it will continue to work. UIDesignRequiresCompatibility is ignored only for apps built with the iOS 27 SDK. Apps built with the iOS 26 SDK can still run on iOS 27 devices, and the compatibility mode will continue to apply.

@Praveen_dharman

Thank you very much for your clarification.

That answers my technical questions and is extremely helpful.

I have one follow-up question regarding App Store submission requirements. I realize this may be outside the scope of the original discussion, but I would appreciate any guidance you can provide. Historically, Apple has required apps submitted to App Store Connect to be built with the latest major SDK beginning around late April of the following year. For example:

  • iOS 17 SDK (Xcode 15): Required starting April 29, 2024
  • iOS 18 SDK (Xcode 16): Required starting April 24, 2025
  • iOS 26 SDK (Xcode 26): Required starting April 28, 2026

References

2024 App Store submission requirement:

https://developer.apple.com/news/upcoming-requirements/?id=04292024a

2025 App Store submission requirement:

https://developer.apple.com/news/?id=9s0rgdy9

2026 App Store submission requirement:

https://developer.apple.com/news/upcoming-requirements/

At the time of writing, I could not find any official announcement regarding when the iOS 27 SDK (Xcode 27) will become mandatory for App Store submissions.

Based on Apple's historical policy and current publicly available information, is it reasonable to assume that applications built with Xcode 26 using the iOS 26 SDK will continue to be accepted by App Store Connect until at least March 2027?

This information is important for determining whether we need to invest additional engineering effort to migrate an application that is scheduled to reach end of sale in March 2027.

@ToshiyukiTakeda Your assumption is reasonable based on Apple historical pattern. Apple hasn’t officially announced the App Store submission requirement for the iOS 27 SDK yet, but in recent years the deadline has typically been around late April.

Although there’s no official confirmation yet, it’s worth planning the migration ahead of time. Starting early helps avoid a last minute rush and provides enough time for implementation, regression testing before the expected deadline.

That back button is driving me crazy. Why not use the system default?

Hello @ToshiyukiTakeda,

Thank you for reaching out on the Developer Forums.

What exactly does "build for iOS 27 or later" mean in this context?

“Build for iOS 27 or later” in this context refers to linking the application against the 27 SDK. That means building with Xcode using the iOS 27 SDK as the base SDK. It does not refer to setting the deployment target to iOS 27 or running the application on an iOS 27 device.

If an application is built using Xcode 26 and the iOS 26 SDK, will UIDesignRequiresCompatibility continue to function when that application runs on iOS 27?

Yes. An application linked against the iOS 26 SDK will have UIDesignRequiresCompatibility honored by the system even when running on an iOS 27 device. The system ignores this key only when the application is linked against the iOS 27 SDK or later. At runtime, the system makes use of what are called “linked on or after” checks, where the behavior of a given key or API may change depending on which SDK version the app was linked against. These checks exist to maintain compatibility so that significant changes in behavior only take effect after the app has been built against a new SDK version.

App Store Requirements:

Apple requires new and updated submissions to the App Store to be built with the current SDK. You're right that the pattern has been very consistent. That said, Apple has not officially announced the iOS 27 SDK requirement date yet.

An official source to watch for this date is: Upcoming Requirements

Adopting UIScene:

There is a second SDK-gated behavior that I want to make sure you are accounting for as well:

If your application uses the UIApplicationDelegate lifecycle and has not adopted UIScene, building against the iOS 27 SDK will cause it to fail to launch. This is governed by the same linked-on-or-after mechanism as UIDesignRequiresCompatibility.

See: Migrate TN3187: Migrating to the UIKit scene-based life cycle

"In the next major release following iOS 26, UIScene lifecycle will be required when building with the latest SDK; otherwise, your app won't launch."

I hope this information is helpful. Thank you all for chiming in.

 Travis

Clarification on the planned removal of UIDesignRequiresCompatibility
 
 
Q