
Android Support vs iOS Support - tlo
http://www.fidlee.com/android-support-vs-ios-support/
======
cromwellian
Somewhat deceptive, because a lot of stuff in Android is now unbundled and
separately updated, whereas with iOS you have to upgrade to a new OS version
to get a new version of the app.

iOS needs a whole OS update to update things like Mail, Maps, Safari, Siri,
Notes, Reminders, Camera, Photos, etc

On Android, many of the core equivalents are available as Play store updates
with the exception of stuff like Chrome and WebView which had deeper OS
dependencies.

Is someone stuck on say, Android 4.2 (two releases ago) in a worse situation
than someone stuck on iOS 5? The Android user in many cases could still get
the latest Google Now cards, Chrome, Gmail, Maps, etc

Yes, it was bad in the Gingerbread era. But if you've got Jellybean or
equivalent, in many cases, you don't need to be on KitKat to get the majority
of the latest features.

~~~
wsc981
It's bad for developers though. You have to stick with older API's when
developing Android apps if you want to target the largest audience possible.
As we speak already ~75% of iOS users are on iOS 7[0] and I'm quite sure it'll
be close to ~90% in the next 2-3 months.

For me as mobile developer, this is one of the reasons why I'll keep
developing iOS apps first and target Android second.

Android adoption rates can be seen here[1].

[0]:
[https://mixpanel.com/trends/#report/ios_7](https://mixpanel.com/trends/#report/ios_7)

[1]:
[https://mixpanel.com/trends/#report/android_frag](https://mixpanel.com/trends/#report/android_frag)

~~~
jheriko
"You have to stick with older API's when developing Android apps if you want
to target the largest audience possible."

what? surely you just use the new features as and when they become available
and always use the oldest API as a 'base level'? this is the same for all
platforms... including iOS - if you approach backward compatibility as
something you seriously want this is not even a problem. even given the quick
uptake on updates in the iOS world, supporting just iOS 7 seems a bit nuts to
me.... maybe i get the wrong end of your stick though.

i'm kind of mystified how you are doing things to make this the case... the
only significant headache i have ever had with backward compatibility is when
apple stop me from being able to do it by force.

~~~
wsc981
> "what? surely you just use the new features as and when they become
> available and always use the oldest API as a 'base level'? this is the same
> for all platforms... including iOS - if you approach backward compatibility
> as something you seriously want this is not even a problem. even given the
> quick uptake on updates in the iOS world, supporting just iOS 7 seems a bit
> nuts to me.... maybe i get the wrong end of your stick though."

In iOS often newer versions of the operating system make certain functionality
much easier to develop due to the new API's that are added or existing API's
that are extended or improved. I personally don't find backwards compatibility
hugely important, I just want to provide enough backwards compatibility to
serve 85+% of the market. I think in the coming months we'll reach that stage
for iOS 7, so for the current app I'm working on will target iOS 7+, that is
if I can convince our client this is a good idea.

Sadly, for Android I'm likely required to target versions 3.2+, which means
some functionality might not work as well or look as great compared to what's
possible in the newest versions of Android, especially if I find myself using
the lowest common denominator of API's. I don't like to do extra work just for
a small part of the audience, so that is something I'll try to avoid (perhaps
some people will hate me for this?).

~~~
kbutler
Why would you target android 3.x? 3.x was a very short-lived, tablet-only
release that never had a significant install base.

I understand wanting to support 2.3 for older/low-end phones, but I've never
seen any statistics, including those you posted, that suggest 3.x has enough
market share to be worth supporting.

~~~
wsc981
I might have been mistaken with 2.3 yeah :)

------
girvo
I've swapped from Android to an iPhone. And I think articles like this are
dumb, and missing the damned point. I don't need to justify my choice, as it's
that: a choice. You're not joining a religion. So why preach?

Anyway, the difference lies here; those EOL'd phones? Yeah, well you have a
much better chance of getting a community written ROM bringing you up to date,
then you do have the same thing happen to your iPhone 3GS. I want to run TOR
on my iPhone, but I don't trust what's in the App Store, and I've no way of
putting FOSS on my phone. I give up that _choice_ for a nice well supported
handset.

But that doesn't mean anyone who makes a different choice is wrong. Sigh.

~~~
gcb0
You have no idea what you are talking. The community isn't a magic unicorn
that crap out software for older devices.

First of all, the radio and camera and anything that touches a hardware is
proprietary and very hard to reverse engineer. So 99% of all ROMs start with
the proprietary blobs being extracted from the official ROMs. So if the last
kernel released for your device (e.g. let's say you gave $600 to google for a
nexus one, the first phone they falsely advertised continuous upgrades) and
now you want android4 there. too bad. it is pretty easy to compile android 4
and flash there. but you will probably not even have the screen working.

~~~
girvo
Lol, mate, I used to port Windows mobile updates to phones that we're never
meant to have it, back when people knew what "XDA" was for.

I do know what I'm talking about: you have that choice with android. Not every
device. But that's splitting hairs. You DONT have that possibility with iOS.
That was an okay trade off for me.

More to the point, now that Android has decoupled core apps from the OS
itself, older phones can have nice new updated core apps, even when their
manufacturer had abandoned them (which I never said was a good thing).

And yes, drivers need to be ported or written. That sucks. But at least
there's the option. I don't have that option with my 4S, so when Apple moves
on from it, I'm stuck.

------
pserwylo
If you split end users into tech people and lay people, then I don't think it
matters as much.

Most of my lay friends tend not to even realise they are not on the latest
version. Their maps app gives them directions and the camera takes photos.

As for more techie people... that's why I much prefer Android. The ROM scene
is amazing, and allows my original Samsung Galaxy S 1 to run the latest
version of Android. I also get to experiment with different ROMs that take
different approaches to mobile OSes.

~~~
reidmain
I think you're underestimating the Apple marketing machine. Members of my
family who hate to open up their computer were asking me questions about iOS 7
before it came out. Apple does a really good job at marketing the latest
version. Android basically never mentions it because of 1) the fragmentation
but 2) Google doesn't have any control of the hardware so they focus on
pushing out app updates rather than OS updates.

------
diminish
Apparently over 80% of the world doesn't agree with the OP. Why could it be?
Apparently they only care about what they can do with the phone they have in
their hand, not a bunch of models listed in a table showing some argument,
such as being stuck at an earlier major version. And some random bits:

    
    
       * on iPhones they can't install CyanogenMod, Ubuntu Mobile, a custom ROM, newer experimental OSs. versions, Firefox.
    
       * on iOS they can't find enough free apps, they end up paying 5 times more. It's a money trap.
    
       * On iPhones they can't install Android KitKat neither since iPhones are stuck on iOS.
    
       * Newer iPhones are stuck at similar specs to the previous versions mainly they couldn't easily keep the API consistent if they had launched a 6.0inch iPhone and a 2inch one.
    
       * They can't install iOS on a phone with very large screen, with dual sim card, a very small screen, a phablet, a water proof phone, a watch, a virtual machine, a game pad
    
       * iPhones are mostly oversold in US, due to carrier subsidy model. Most people end up paying higher sums during the whole contract, beyond the initial money they paid. It's a money trap to suck more from customers.

~~~
sbuk
_> on iPhones they can't install CyanogenMod, Ubuntu Mobile, a custom ROM,
newer experimental OSs. versions, Firefox._

Of the "80%", how many _care_?

 _> on iOS they can't find enough free apps, they end up paying 5 times more.
It's a money trap._

Bullshit.

 _> On iPhones they can't install Android KitKat neither since iPhones are
stuck on iOS._

Meaningless.

 _> Newer iPhones are stuck at similar specs to the previous versions mainly
they couldn't easily keep the API consistent if they had launched a 6.0inch
iPhone and a 2inch one._

Bullshit.

 _> They can't install iOS on a phone with very large screen, with dual sim
card, a very small screen, a phablet, a water proof phone, a watch, a virtual
machine, a game pad_

Meaningless.

 _> iPhones are mostly oversold in US, due to carrier subsidy model. Most
people end up paying higher sums during the whole contract, beyond the initial
money they paid. It's a money trap to suck more from customers._

Bullshit.

~~~
m0skit0
Wait, I'm going to use your same elaborate arguments: bullshit.

~~~
sbuk
I see what you did there...

There is no point is arguing this kind of thinking. If it's reversed, _you 'd_
cry FUD. It's meaningless bullshit. Simple as that.

 _Edit:_ the whole list is so logically challenged (if something is free, how
can someone pay "5 times as much"?) that it wily be a waste of time and energy
debating any merit that may be present.

------
gnur
What I find the most surprising is how Apple continued to sell the 3GS. You
could have bought a 3GS at a time where I wouldn't have updates for even a
year. The upgrades also shouldn't be a reason for buying a phone, you buy a
phone for what it can do now. You don't know whether an update will be useful
or not. What did iOS 6 add? Apple's own Maps, Facebook integration (why is
that an OS feature?). Those are all things that in Android are just app
updates, any app can integrate with other apps and feature SSO & default apps
(like Maps, SMS, browser) can be chosen by the user.

There are some things that iOS 7 does better then Android, and some things
that Android does better. Both have a target audience and both are really
advanced, but neither is a truly better OS.

I currently own an iPhone 5S. And while I do love the fingerprint sensor and
the back-gesture-swipe, there really are some oddities in iOS. Why can't I use
a mp3 as a ringtone without using iTunes? Why do I have to use iTunes to add
music to my phone? Why can't I choose Chrome as my default browser?

~~~
JimDabell
> Why do I have to use iTunes to add music to my phone?

You don't. You have to use iTunes to add music to the bundled Music app. You
can use other music apps that have different ways of getting the music onto
your device, e.g. Spotify, last.fm, Amazon Cloud Player, etc.

~~~
Cthulhu_
And you don't even have to use itunes, plenty of alternative / reverse
engineered systems that can send music files to your idevice.

~~~
ward
Is that still correct for iOS5 and newer? I know I never solved that to
anything remotely close to satisfaction when checking it out last time for
iOS6

------
nevi-me
Yes, Android support is a bit bad, slowly improving but still unsatisfactory.
However, I agree with other commenters that it's not a good apple to apple
comparison. Most of the apps that come with Android with Google apps (which
all of the OEMs listed use) have the majority of apps that can be updated from
the Play Store. Besides for 'low-level' APIs that change with each Android
version, a lot of users still get the benefits of app updates, which
ordinarily continue to work fine on older hardware.

Of course this becomes a problem for developers regarding which versions to
target as a minimum, but to offset that to an extent, there are compatibility
libraries (both from Google and the community).

Lastly, the aftermarket ROM community is doing wonderful work with supporting
flagships and other device ports. It can only get better, definitely not a
reason for me to switch to iOS, if I know the differences between the OS
features, and what each version of each OS roughly has, I should also know
that I can get a custom ROM that will have all and likely more features than
stock Android.

------
doe88
However, that doesn't take into account all the new features disabled on past
iOS devices. Of course there are a variety of reasons why some features are
not present: (lack of) hardware, marketing, difficult to backport.

------
TeeWEE
What is the problem of running an older Android OS version on your phone if it
runs fine? Some people are not tech savvy, and dont want every update. And
most people buy a new phone every two years. So, while the graph is probably
right, it is not pointing out a big problem.

For developers it is easy to build an android app that supports android
version 2.2 upwards with the compatibility packages. Testing is just a tidbid
harder.

~~~
gcp
>For developers it is easy to build an android app that supports android
version 2.2 upwards with the compatibility packages.

No, it isn't. Seriously, tell my how compatibility packages address the lack
of TextureView in pre-ICS, the lack of meaningful Camera API, the lack of
OpenSLES, the outdated SQLite libs, the lack of way to get the native sampling
rate, ... (I could _literally_ go on for an hour like this).

Any nontrivial app needs load of work to properly support old versions. And
then you can begin the real work: fixing vendor specific bugs.

~~~
king_jester
> No, it isn't. Seriously, tell my how compatibility packages address the lack
> of TextureView in pre-ICS, the lack of meaningful Camera API, the lack of
> OpenSLES, the outdated SQLite libs, the lack of way to get the native
> sampling rate, ... (I could literally go on for an hour like this).

Things like TextureView, OpenSLES, and sampling rate are app specific and will
be a challenge to deal with in general, regardless of platform level. Camera
APIs are available in a good state going back to API 8 and 9, which are 2.x
releases. Generally speaking, the majority of app developers will not have to
deal with the APIs you are talking about, but yes they are flaws and your app
may have to target higher API levels or have extra development if you want to
support older devices for those things.

> Any nontrivial app needs load of work to properly support old versions. And
> then you can begin the real work: fixing vendor specific bugs.

Vendor specific bugs are always an issue even in the 4.x releases, this is
something that cannot be avoided when developing for a platform with a lot of
hardware variation.

------
jokamoto
I did survey of Android side of things during winter break right after Ice
Cream Sandwich came out[0]. As I recall most of the severe fragmentation cases
were low-end handsets which were typically behind a version or more already
when released.

[0]: [http://www-users.cs.umn.edu/~okamoto/map.png](http://www-
users.cs.umn.edu/~okamoto/map.png)

~~~
gcb0
your point? ...that only makes it even _worse_ in my view.

~~~
makomk
The point is presumably that there's _no equivalent in the Apple ecosystem at
all_. If you want an iPhone for even close to the price of a low-end Android
phone, your only option is a second-hand 3GS which is also one major version
behind and no longer getting updates (or the equivalent at whatever time that
survey was done). Except that, because Android can update many of the bundled
apps seperately and iOS cannot, you're actually worse off.

------
gcp
Clearly this also depends on what you consider a "major version". If you
consider major Android versions to be 1.x, 2.x, 3.x and 4.x, Android would
look a lot better.

In actual development experience, pre-ICS (2.x/3.x) and post-ICS (4.x) are a
big divider.

------
Grue3
Does this count 4.1, 4.2 and 4.3 as separate versions? I had all 3 on my phone
and barely anything changed between them. This looks like typical Apple
fanboyism to me.

~~~
andyjohnson0
To a developer, they are separate versions with api differences that are
potentially significant.

To a user, the differences [1] are fairly minor in my view. Presumably this is
why Google groups them all under the name Jelly Bean.

[1] [http://technoblimp.com/2013/08/28/android-jelly-
bean-4-1-4-2...](http://technoblimp.com/2013/08/28/android-jelly-
bean-4-1-4-2-and-4-3-compared/)

------
kshep
I wonder how much this reflects a split in the market between people who treat
their smartphone like a computer vs those who treat it like an appliance. When
I buy a microwave, a TV, a stereo, a car, or pretty much any other consumer
product, I have no expectation that the UI will ever change. I won't have
people moving the knobs on my cars dashboard, or "flattening" the UI on my
microwave. Android is on OS used primarily by phone manufacturers who still
want to control the user experience (e.g. TouchWiz), and who are selling that
phone as an appliance.

Complaining that one can't put Kit Kat on a Nexus S seems a bit like
complaining that you can't add HDMI input on your old Sony Trinitron or put
ABS on my 1990 Miata.

------
jheriko
right, but apple will turn your phone into a brick with an update because they
stop caring about older models long before they officially drop support.

~~~
gcb0
True. they list 3Gs as supported. I can barely use my test 3GS with the latest
ios6.. i go for a coffee everytime i open the browser. i bet with ios7 i would
be able to go brew a fresh one.

~~~
Samuel_Michon
Apple is damned if they do and damned if they don’t. If Apple decides a device
is too slow to run a new major version of the OS, the decision will be
condemned by people like u/jheriko. If Apple does let a 4 year old model run
the new major release, people like u/gcb0 will complain that it’s slow.

Meanwhile, a three year old phone (iPhone 4) can run iOS 7 and run it well,
albeit without fancy animations and parallax effect. I don’t know of any three
year old Android phones that run Android 4.4.

~~~
jheriko
(i am not a fan of android at all and much prefer ios)

its trivial to solve. test the os update on old devices and don't push os
updates to old phones if it destroys the user experience. i'm not going to
condemn them for not ruining my user experience...

my issue is the fact that they change their tools and processes to make it
impossible to support e.g. iPhone 1 if you want to. My app will run lovely on
an iPhone 1 or 3G, but I can not make a version that runs on these phones as
well as an iPhone 5. This is a choice, not a technical constraint or avoiding
maintenance costs - I'm very sure its /more/ expensive to do this than not.

i'm fairly sure that its part of their strategy to encourage you to use the
latest devices. lots of apple consumers seem to be aware that 'apple don't
give a crap about you if you use their old stuff' \- i've heard this opinion
unprovoked from very un-tech-savvy types much more often than once.

if you work with the apple tech much yourself its an obvious recurring theme -
they all but explicitly tell you not to support old devices and then do make
it actually impossible beyond a certain point.

this is just not the case for android or even windows or any other platform/os
except for perhaps games consoles which are special - if i want i can make an
app run across all android versions and have one entry in google play and
supporting old versions of windows is trivial work usually. apple have the
worst ecosystem for this by miles and miles - nobody else comes close

...and actually old android phones do run 4.4 - you have to put it there
manually perhaps, but this is at least possible. it actually has performance
benefits on older phones too... which is how it should be. the fact that each
ios release is significantly slower isn't down to new features or niceness its
programmer sloppiness.

------
eonil
That fragmentation forces developers to be remained painful and, sucky old API
and toolset. What really sucks is Google only advances to newer version, and
don't give a shit on old versions - that's what they have been do on their
services.

Google can provide something better even on old version of OS, but they didn't
because it's annoying, so now all the 3rd-party developers must do clean the
shit from Google.

Anyway, if Google is not idiot, they should know he problem is the
fragmentation, and will offer some better abstraction layer which can cover
any old systems too. And I believe the answer from Google is Chrome. Now I
believe the Android - which is out of control - is out of focus in Google.

------
Zigurd
This is why I thought putting the CyanogenMod installer app in the Play store
was a watershed event, with Google acknowledging the role of aftermarket
Android distros in keeping older OEM devices current. Too bad that didn't last
more than a week or two.

The chart isn't entirely fair, since Google Play Services is a kind of overlay
for some APIs that can be kept current without an OS upgrade. But that also
has the effect of making closed some parts of the Android system.

Overall, Google could help enable, and could more strongly encourage OEM
partners to provide upgrades. I'm not sure why that isn't a condition for
Google logo and app suite licensing.

~~~
makomk
It might've lasted more than a week or two if it wasn't a warranty and support
nightmare. The CyanogenMod installer app made it easy to install when it
worked, but apparently it frequently failed leaving the phone as good as
bricked for most users. (The only way to recover was to reflash manually using
the traditional tools, and the app was aimed mostly at people who couldn't
figure this out.) Also, it was a one-way trip - if users didn't like
CyanogenMod or found it didn't run on their device, there was no way to
reinstall the official firmware.

------
Aloha
This is one of the reasons why I have an iPhone.

------
jamesjguthrie
This is not the same reason that my latest phone upgrade was to iPhone. I
always root my Android devices so that I can get the latest OS when I need it.
For example, my Galaxy S2 is not 4 major updates behind as this chart says,
it's actually fully up to date. The Android ROM community is massively popular
[1] so this comparison here is invalid.

[1] 5.4 million registered users on XDA-dev.com with the majority of the
subforums being for Android phones.

------
csmuk
Windows Phone is no better here either. They screwed WP7 users completely and
rumor has it that 8.1 won't work on WP8 handsets either.

I've moved to iOS for mobile devices as well. Better investment long term,
especially considering that I am actually paying for some apps and want them
to work for more than a couple of years before I have to argue with the
upgrade treadmill.

------
raesene3
This is a great illustration of why Android is likely to face problems in
corporate deployments. Lack of security updates less than 2 years after
release is likely to prove a serious problem for companies who operate a 3-5
year device refresh lifecycle...

~~~
indymike
Maybe the issue is that a 3-5 year refresh on a device with a 2 year designed
lifespan is a bad idea? Also, with the pace that smartphones have advanced...
even if a 5 year old phone still works, who wants to use it?

~~~
raesene3
Sure in a consumer scenario 2 years is the norm. What I was thinking of is
that corporates are not used to 2 year lifecycles so there's likely going to
be problems for them if they don't budget for that.

------
triskweline
This chart spells horrible things for all web developers.

Legacy Android brwosers will become the next IE6 in terms of joy drained from
our lives.

------
goggles99
Does it really matter when you get a new free android smartphone every two
years? I doubt that people will get far enough behind to really care. Also,
Google framework updates now so you always have the latest core experience
without your UI functionality shifting around via OS update.

