You’ve decided that you want to build a mobile app. You’ve decided that it needs to be available on both of today’s two major smartphone/tablet operating systems – iOS and Android – but which versions of these platforms should it support?
All of them, surely, so that everybody can use your app? Unfortunately it’s not quite so simple. With every new version of iOS and Android, Apple and Google add new features. Devices that are running an older version of the operating system cannot run apps that depend on these new features. If those features are essential to your app then the choice is straightforward – you can only support devices running the newer software. If the features are not essential you can either not use them or the app can be written in such a way that it adapts to the device it is running on – on devices running older software the app functionality might degrade gracefully – but this will add complexity to the app and therefore increase development costs.
When choosing the range of platform versions to support it is important to understand how your decisions will impact the size of your target user base. Both Apple and Google publish regular figures that show what percentage of devices are running each OS version.
Apple is in full control of the iOS ecosystem. It manufacturers all of the devices that run iOS and chooses which devices will receive updates. It is aggressive in encouraging both users and developers to move to the latest version of the platform to the extent that developing for anything older than the two most recent major versions can be difficult due to lack of support in the latest tools. The upside of this is that when a new iOS version is released you can be confident that within a few months it will be installed on the vast majority of devices, making it rarely necessary to hold off on taking advantage of the newest features. At the time of writing (August 2016), Apple’s figures show that 86% of active iOS devices are running iOS 9 (the latest version), 11% are running iOS 8, and just 3% earlier versions. Therefore, in most cases, we would advise clients to target iOS 8 and 9.
Google’s Android business model creates a somewhat different picture on that platform. The vast majority of Android devices are manufactured by other companies, each with its own policy on if and when devices will be updated with new versions of the operating system. This means that it takes significantly longer for a new Android release to make it to a majority of active Android devices and makes it necessary to support several previous versions in order to reach 90%+ of the user base. Google’s most recent figures show that only 15.2% of active Android users are using devices running Android 6.0 (Marshmallow), the latest version. A further 35.5% are on 5.0 or 5.1 (Lollipop) making a narrow majority running one of the two most recent major versions. It is necessary to support Android 4.1 (Jelly Bean) and later in order to reach over 95% of users. Targeting Android 4.1 and later is Rectangular Software’s current recommendation for Android development. The pace of change in Android deployments is much slower than iOS so it may be a year or two before it is feasible to develop for only 5.0 and later.