Adam Rush

@Adam9Rush

19 April, 2022

Introduction

Choosing your minimum iOS version to support is something you will certainly consider. For example, you’ve built your iOS application and did a File New Project. You’re likely supporting the latest version of iOS, and you might not have even considered lowering your deployment target. This is an excellent position because you can utilise all the newest iOS features and APIs.

However, if you’re part of an existing application or a large userbase, you will have likely had the discussion, “What iOS version should we support”.

When creating a brand new iOS application, Xcode will automatically support the latest version.

A brand new Xcode project with the latest supported iOS version

This means that anyone using an iOS version before this won’t be able to download your application. This is because it’s a brand new iOS application with no prior iOS support available.

However, if you have an iOS application on the App Store and change it to a different version, then it means anyone on the version before can’t upgrade but will still be able to use the current version.

The Community

It’s interesting when you look at the community regarding this topic; many people will prefer to support the latest version continuously. Using the latest iOS features and APIs is preferable because maintaining the current code base is more manageable.

I placed a poll on Twitter to see what kind of response I would get, and here are the results.

The results are interesting, but we don’t know who is voting and which company they’re working for. I can imagine asking more enterprise customers/developers this question, and the results would be drastically different.

Apple has created tools to make this process easier; for example, we can set a specific version available for a particular version of iOS on App Store Connect.

This image is showing the last compatible version within App Store Connect

This is also useful if your application has some issues on a specific version and you want to exclude it even on devices that can only have that version.

Persuading the Business on Supported iOS Version

When choosing your minimum iOS version support, your most formidable challenge is persuading large organisations that upgrading your iOS application to the latest version is the best technical choice.

You’re likely going to face some tough questions such as:

  1. What about all our existing app users?
  2. What if they stop using our iOS application?
  3. Is our competitor supporting more versions than us?
  4. It won’t harm us if we keep all these versions?

Let’s explore these questions in more detail and work on how we can cover those in your day to day jobs.

What about all our existing app users?

This is the most popular question you will face when discovering this topic at work. First of all, if you’re a brand new application, then it’s likely less critical; I mean, Apple has a tremendous adoption rate of the latest iOS version.

Based on this article and several other data sources, iOS 15 is currently on around 72% adoption, and it was launched on September 20th 2021; this means iOS 15 has been around for ~7 months and has a massive adoption in the marketplace, chances are you’re going to be okay.

However, if you’re an existing iOS application, you will require data.

If you’re not already, you should start gathering basic device information such as Device Type, Model and OS version; you can do this easier by utilising Apple’s MetricKit framework, which you can read more about here. Gathering this data means you know precisely what percentage of your customers use which version of iOS.

Once you have this data, you can go forward with the business case; remember, when choosing your minimum iOS version, you’re not deleting the iOS app from existing users. Instead, you’re simply dropping support, which means they can’t upgrade to the newer version without upgrading their OS.

So, in short, your existing users won’t simply drop off the cliff.

What if they stop using our iOS application?

Your users won’t know about this change because it won’t appear as an available update on the App Store, nor will it update automatically in the background. The only way a customer will know about this is to visit your App Store page manually and find the message “You can’t upgrade to this version as it requires X version of iOS”.

So it’s doubtful your customers will be unhappy about this change. However, they might start facing issues or bugs in the application and reporting those issues; again, this is quite unlikely, especially if it’s only a -1 supported version. This becomes more likely the older the iOS version.

Is our competitor supporting more iOS versions than us?

This question is tricky because if you have a direct competitor promoting the fact they support an older version of iOS, it could be used as a sales tactic to get more customers. However, let’s play devil’s advocate in this situation; your direct competitor is supporting older and sometimes legacy versions could also mean they have older code that is difficult to maintain and hard to fix issues. It could also mean they’re not adopting the latest Apple features and APIs.

When I see apps upgrading the iOS version, I will often see the positivity from this and know that they have an active developer team pushing the technology stack forward, which is often missed.

It won’t harm us if we support all these versions?

For sure, it probably won’t harm us supporting many versions. But it sure will slow the developer team down, the design team (keeping up with the ever-changing HIG standards).

Maintaining many iOS versions can slow your team down in fixing bugs on specific iOS versions. In addition, it can be hard to adopt newer APIs because you have to hold so much backward compatibility. Ultimately, your users will pay the price.

So, you’re correct; it probably won’t harm us, but we should keep pushing our iOS applications forward and make sure our code is maintainable in years to come. Nevertheless, Apple will often feature iOS applications using all the latest technology ;]!

What Next?

It’s interesting when you research this topic, and I am super interested to hear about your research and how you tackle this problem in your workplace.

In my opinion, most iOS applications will support the current version + 1. So, most people are supporting iOS 15 and iOS 14 only. However, I was surprised at the number of iOS apps on the App Store supporting right down to iOS 11.

Finally, it’s worth noting that iOS support could be done based on technology or APIs introduced. For example, I know many developers are adopting iOS 13+ because this was when we had many many new APIs introduced and nothing major after that.

Sponsor

Subscribe for curated Swift content for free

- weekly delivered.