I am making an android app, and am wondering what the industry\'s thoughts are on supporting older android versions like GingerBread and FroYo. Should a developer like me take t
There were only few (~10) percent of users with Gingerbread to download our application from Play Store, so we have decided not to support it anymore. It was about 7 months ago. Froyo and Honeycomb are dead for much longer time.
We would go with Android 4.0 (API 14) as minimum for new projects. There is no real benefit from supporting older version unless you are forced to do so (client requested it, etc.).
I'm a developer myself. I would look into this from multiple point of view and I would use several factors to begin a project with a particular sdk as minimum.
Beside the chart, that Google is kind enough to publish, which is really helpful and informative and i believe it represents devices around the world.
These are the factors I would take under consideration:
What's my app all about? What kind of people and what kind of age range would attract. Young people tend to keep their gadgets up-to-date.
In which country I'm going to release my app? Not all countries have the same mainstream when it comes to technology.
Does the minimum sdk affects the time or the resources that are going to be used in the app? If having a high sdk as minimum is inversely proportional with the time and the struggle my developers would face in order to make everything compatible, then I would choose a higher sdk, even if I have to exclude a small proportion of users. Let's face it, this is 2016. Technology is running faster than light. Releasing early really matters. In the other hand, if it really doesn't affect that much, then just choose a version that covers most devices.
Security matters as well. Everyday new issues are being patched. Newer version is more secure.
If the idea is powerful, than I would choose as higher as I could. People will follow. Is the truth.
Many functionalities are being deprecated. And usually in older versions. Upgrading from those can be hell.
Can't think of anything else. But if you want my opinion, I would choose API 19 as minimum.
Cheers.
Most of the Android devices are above the Gingerbread level. But there are still a decent number of those devices out there. You, as a developer, must decide if the number of users who would potentially download your app for those versions of Android is worth the level of effort in developing the app for those versions. For the past year, both companies I've worked at have begun to work on 4.0 and above only and have forsaken the lower versions.
To get the current information on what the ecosystem looks like for Android, check out Google's dashboard
As I write this comment, Gingerbread and below is around 15% of the total population.
2019 UPDATE: Google's dashboard states that only 0.2% of Android users are running Gingerbread (Android 2.3). Around 3% are using Jelly Bean (Android 4.1/4.2/4.3), and 7.6% are running KitKat (Android 4.4).
Generally, companies target a minimum version of KitKat, or SDK 19, for new endeavors. For personal projects, we usually choose Lollipop, or SDK 21, as it brings a number of improvements to the table, such as improved build times.
If you look at the comments, they usually set the min level to 19 since years ago. Right now, it is nonsense (also, some comments are obsolete).
We are looked at the statistics of Google, and they say, "+10% of the devices are KitKat or lower. However, it's tough (if any) to find a company that sells phones for Kitkat.
So, why Kitkat 19 is still popular? Because old smartphones simply don't go away (and they aren't updated).
Then, technically 10% of the market uses Kitkat or lower but that information is mostly useless
From then 10%, how many of them will install your application? Or any new application?. I know a lot of people that are happy with their old-and-rusty phone, but they only use for making calls and watch youtube/browser internet. So, usually, the lower 10% is not part of our target market or the target market of anybody.
Twitter said about it:
When Twitter says API=23, then Twitter is ignoring 25% of the market. It is a huge number. But again, this number means nothing without analysis. Twitter decided that this number is moot because, of the 25% of the users that use an old phone, they are not really in its market share, i.e., people that don't use Twitter on their phones using an application.
So, for the record and as for April 2020.
For example, I run a windows server, and the default browser is Internet Explorer. Do you know how Internet Explorer works in the real world? It doesn't!. It works with google and a few sites, but everything else is broken. And still, developers "support" internet explorer because of the non-existence 6.97% market share (the users exist, but they are not everybody users but intranet users).
Now, if your application is for a government/public interest, then we should stick with the standard or official procedure, and sometimes it could be around API 15 or 16.
[2020 UPDATE] You need to base on Android Pie Chart . It is always updated.
here's the link of the dash board:
https://developer.android.com/about/dashboards/index.html
For those who are looking for an opinion to refer to, @minSdkVersion updates their Twitter account when they deem it appropriate to start using a higher minimum SDK version. They claim
The minimum SDK version for the practical, rational developer.
As others have mentioned, it's also worth checking the Android distribution dashboard. The full platform version disribution can be found in Android Studio's Create New Project wizard.