As far as I know, it's not really on the app developers, after a while Apple requires them to switch to a newer "target" build if they want to push out an update. Currently, the minimum target iOS version if you're submitting an app to the app store is iOS 18.
And additionally, even if there once was a compatible version, Apple only lets end users download it if they have previously purchased/downloaded the app.
In my opinion, this is almost fully Apple's fault
You’re conflating target version with minimum supported version.
There aren’t requirements to update the minimum. They’re independent. There might be limitations on what APIs are still available though in Xcode if they’re removed after a deprecation period however.
You can use the latest SDK, and if you don’t use any new APIs, your app will continue to deploy to whatever minimum you have set.
If you want to use the new APIs, you can put their use behind availability checks.
It’s just that at some point, as a dev, you want to stop testing on older devices and you want to stop branching your code for OS versions that are a minuscule fraction of the active user base. The ROI changes quickly.
I think a lot of people in this thread are mistaking SDK version and minimum supported version.
The App store requires you to link with a minimum SDK version, but the minimum supported version is set independently by the developer in Xcode. The latest version of Xcode + the latest SDK can still support devices running iOS 15. Developers are deliberately choosing to drop such support. Or maybe they just don't know how, as evidenced in this thread.
Xcode occasionally bumps the minimum will compile for without complaint.
Yes, but even with the current latest SDK and latest Xcode, iOS 15 can be set as the minimum supported version.
Which, importantly means you can support devices back to the iPhone 6S that is a decade old at this point.
I'm on iOS 15 and still regularly get updates for a handful of apps. How are they doing it?
Your app must run on iOS 18 but you can drop features to get it to support as old of an iOS as you want.
That’s not true, watch the video here to see why not: https://youtu.be/WXqVV8_GORE
TL;DW
1. you must use current Xcode to submit to the App Store
2. Current Xcode only supports a short list of the most recent iOS SDKs as targets
3. Therefore you can’t make a build with an older Xcode to submit, and you can’t make a build that supports say, iOS 15, with current Xcode.
The video highlights a complete hack which can for now be used to make builds that target older SDKs, but Apple could change their systems to break that at any time, and in fact the latest iOSs don’t use these device support files that he shows are the key to the hack. So while you can do this now for old iOS, when 26 is too outdated for Apple to want you to target, this hack won’t work to bring it back.
No you can
https://developer.apple.com/support/xcode/ the iOS 26 SDK can target iOS 15 or later
Sorry. I meant iOS 14, then
This video was very informative on how Apple deliberately blocks developers’ ability to update an app without removing support for older iOS and an unsupported undocumented workaround the creator has noticed which at least momentarily works to work around it:
https://youtu.be/WXqVV8_GORE