21% of Android devices are now running ICS
developer.android.com
developer.android.com
And we are celebrating that?
Google really needs to find a solution to get these devices updated independently from the manufacturers which are only interested in selling new devices.
It's very frustrating for developers to see more and more features being added to the platform that are out of reach for years or require a lot of work to implement in a backwards compatible way (which then also isn't worth the effort because nobody is running the newer versions)
Business app: ICS 53%, GB 37%
Medical app: ICS 46 %, 40 %
So while it's not all rosy, the actual impact of the fragmentation is significantly dependant on who your target market is.
Also as a tip to all developers struggling with fragmentation:
- https://github.com/JakeWharton/ActionBarSherlock/ (ActionBar library for pre-ICS devices)
- https://github.com/ChristopheVersieux/HoloEverywhere (Holo Theme library for pre-ICS devices)
They're both well known, but doesn't hurt to repeat, these will make your life a lot easier.
Why? I mean I'm sure Google would love faster updates from their partners and I think going forward they've decided to share their roadmaps with more then the current nexus partner which should help but:
(1) At the end of the day Android is doing gangbusters even with slow updates.
(2) There's a distinct line of devices that should get fast updates if that's a killer feature for you.
(3) The whole point of Android is they don't all have to do anything.
It is by far the number one problem with the platform at the moment. And frankly the idea that Google should do nothing about addressing Android's biggest flaw is pretty dumb.
What makes Android users so different ?
Android OEMs and carriers, on the other hand, often make it easy to not update even when an update is available. For instance, they might deliberately not push an OTA update and instead require users to use a manufacturer-proprietary desktop application if they want the update. And, unlike iTunes for iOS users, most Android users aren't in the habit of using these applications since they're almost never necessary and usually less convenient than doing things directly on the device.
Windows and OSX are desktop systems, and not all of their owners update. Witness the prevalence of XP and 10.5 in the wild.
Going by wikipedia's usage share of web browsers maybe I'll say 15%+?
Even those, who are capable of OTA updates, they often don't (if your monthly limit is 1GB of data, you are not going to burn it on update).
It may be difficult to accept on HN, but really, mainstream users do not care about firmware updates. It is actually net negative for them. They have a device they are using and the update changes the behavior, that they are used to.
I'm guessing most actually don't care. That's the point of Android -- if "most" really cared the market would respond in a bigger way to that. The Galaxy Nexus has done well in sales but ultimately it's losing head to head against ICS phones.
When ICS arrived for my wife's SGS2, she was probably more irritated by the update clearing her home screens than she was about most of the improvements in ICS. IIRC, the only feature that qualified for actual excitement rather than mild interest (or even less) was the ability to kill Vlingo dead, dead, dead.
I would say this is straining for equivalence. The day iOS 6 went into public beta you could run it on a 2009 3GS.
Fundamentally Google has little power over phones that have already been sold so even if it wanted to it can't change the fact that many phones sold won't get official updates. So Google's focus has to be on tomorrow's phones. It puts the source out there for old phones and customers can complain to Samsung or use Cyanogen or not care.
OTOH Apple does have that control over older phones and coupled with the few models available this means it can afford to deliver an experience that's slightly more developer and customer friendly (in this respect). The fundamentals of this don't seem likely to change anytime soon.
The bottom line is if timely and regular updates are your killer feature then you're taking your chances with anything that isn't a nexus or iOS device. And while nexus devices are a clear 2nd place, iOS is Secretariat at the Belmont.
The irony I guess is we'd expect Windows Phone to fall between iOS and Android here and yet they've basically been the biggest joke. I guess they get points for honesty? We'll see how many checks those points cash at nokia's bankruptcy proceedings.
With respect to a new OS release:
(a) When can people outside of the OS developer / OEMs and relevant carriers first use the new OS version?
Android: When the Nexus device launches
iOS: With the iOS public beta
(b) When do developers get the SDK for the new release?
Android: Shortly before or around the Nexus device release
iOS: With the iOS public beta
(c) When is the new OS release "done"?
Android: Some number of x.x.x releases after the initial Nexus launch (probably 4.0.3 for ICS). For example, at least one core Android developer said that they didn't get ICS working on anything with less than 1GB RAM (or a 720p screen is a logical inference given the possible devices) until 4.0.3 on the Nexus S! I don't know what to call Android 4.0, but I'm sure "done" doesn't fit.
iOS: When the OS is released
As much as I love my Samsung devices, really got burned by those updates
If you're at the point, as a technical user, where OS flexibility is more important to you than the device choice, then it's probably worth your time to puzzle out the process.
You're right -- it's not hard. Just annoying and possibly risky. A lot of these ROMs are alpha/beta quality and not fully tested. For example I installed a JB ROM on my Galaxy Nexus 4G that broke my GPS. I didn't even realize it until I was lost and needed GPS to find my way back to the highway. Most of these ROMs (none yet?) have OTA updating so once you flash you are committing yourself to maintaining it going forward. So for example if there's some horrible security problem you may never get patched unless you seek it out yourself. This brings up the issue of installing software from untrusted sources. Cyanogenmod is fine but what about all the others? Call me old fashion but I don't enjoy flashing random ROMS I find on web forums. Seems like that could end really poorly.
The final annoyance that gets me every time is these different ROM releases often require you to wipe system data. So you have to use something like Titanium Backup, which has a UI similar to the cockpit of a 747, to back things up yourself. On my first attempt to do this I accidentally restored 'system data' or something like that which borked my phone up really well. I had to repeat the whole process of wiping and starting over. The other gripe is when TB reinstalls apps you have to sit there and hit install/done about a million times.
Even as a technical user I just don't want to deal with it but I still do want the latest OS release. I even foolishly bought a Galaxy Nexus thinking I wouldn't have to deal with it anymore but I didn't buy the right Galaxy Nexus that gets updates from Google. Silly me.
If you get kicks out of flashing "edge" ROM's (I do) then you can go nuts, but if you're looking for fast, reliable and full-featured (of which stock ROM's are almost universally are not), then just flash CM and enjoy the phone as it was meant to be before marketing and lawyers fucked it up.
You can fix that: http://webtrickz.com/easiest-way-to-change-galaxy-nexus-from...
If you want a phone with the latest version of the OS, then CM is a bandage, not a solution. The only solution is buying only nexuses.
That depends on how you look at it. It's only an issue for me if the phone is never updated. It's fine if I'm lagging behind by a version, as long as I receive an update before I end up 2 versions behind.
Going to take issue with this as well. I'm on a SGS3 and CM10 (JB), and they just changed the status of the rom from "EXPERIMENTAL" to "NIGHTLY", yet I have not seen a single problem so far. Everything works except for TV-out, which I couldn't get to work with either of my TV's with the stock rom anyway.
Since when was the S2 supported by Cyanogenmod?
And by supported, I don't mean "do not use, phone calls do not work" or "stable to come soon (last non-stable release three months ago).
I'm not saying that this is a clean process. It's not (and frankly can't be). I was simply saying that if you were going to rule out purchasing a phone you would otherwise prefer, it would be a better idea to do some research first.
And to be clear: I have a Galaxy Nexus in my pocket. But I wouldn't fear a OEM phone if I really wanted it.
I am tired of waiting for updates. I'm not sure if it's AT&T or Google or what, but my faith has been shaken in the Nexus line. In 14 months I think I will be getting an iPhone.
</rant>
I'm not quite sure why exactly you're not seeing any updates available, but if you're interested Google does provide factory images for all Nexus devices: https://developers.google.com/android/nexus/images#sojuajro0...
You have a Nexus S on AT&T? Not 4g or anything? I called up Samsung customer service just now and they said no AT&T phones have the update yet.
It's difficult to know who to blame.
And I'm running 2.2 on my less than a year old Motorola Defy. No further updates expected.
http://www.htcdev.com/bootloader
In my experience, HTC is pretty good (although a bit slow) with updating Android on their older models.
You can make a direct comparison to windows phone: Microsoft has all kinds of restrictions for handset manufacturers and carriers about what they can do with it: device makers can't bundle shitty bloatware, tight hardware requirements, updates are controlled, etc. All things that produce a good experience for the end user. And look how the vendors reacted: the OEMs don't really want to build them, the carriers don't push them, the salespeople recommend android over it, and usage is minimal. Maybe if google took the same route and forced all the OEMs to upgrade to the latest firmware, those 21% of android phones that are on ICS would be android's total market share.
Judging from the Nexus phone sales, I'd say it'd be a lot lower than that.
Do you really think they are the first company who has had to deal with building a core platform that third parties can add on top of (carriers, OEMs) ?
This isn't a complex problem to solve.
You centralize updates of the core OS and build ABIs/APIs for all of the parts of the system that are needed to be extensible e.g. drivers, libraries, shells etc. This model is proven to work and work well. It just needs Google to show some leadership.
The Linux / Windows update situation that is most analogous to the carrier-gated smartphone updates is updating OSes inside large companies. It's the same update process - a third party has to certify your update and then the update is incrementally rolled out to a large number of computers.
So how do corporations do with their Windows and Linux updates? Well, I'm using XP and RHEL 5 these days and I don't think my experience is at all atypical...
Also, as enviable as Apple's uptake of OS updates is, I don't think it's essential for the viability of a mobile platform. If people upgrade their phones on two-year cycles you can just ride that wave instead of trying to get people to update their software. Since both iOS and Android are pretty mature at this point major updates are less critical.
In what way exactly? Given that the Galaxy S3 is selling like hotcakes, it doesn't seem that having a bad reputation is bad for business.
1. The first non-Nexus phone updated to Jelly Bean.
2. The first device using a non-Nexus chipset updated to Jelly Bean.
I think Samsung is really nailing distribution. Here in Vietnam I see their stuff in every single phone shop but have to look a lot harder to find HTC and I can't find the Asus tablets anywhere.
For example, last year I'm pretty sure HTC and Sony hurt themselves by skimping on internal storage and Motorola had some high-profile late devices. This year I think HTC made a mistake on microSD and removable batteries in the One series, Sony launched too many devices on Gingerbread and both Motorola and Sony were too slow with their ICS updates (even though Sony probably has the best update coverage of any phone manufacturer). And so on.
"based on the number of Android devices that have accessed Google Play within a 14-day period ending on the data collection date " (September 4, 2012)
14-day period? That's a pretty decent way of making sure that the people who have had their phones for a long time (like this guy here with the Droid X) are underrepresented.
They're getting data from devices which accessed the play store, because that's all the data that google has.
Otherwise, how would it know to pop up a notification that app updates are available?
This statistic is published for developers to get an idea of which OS versions they should be supporting based off market share. If you aren't opening the play store to buy apps in the 14-day period, then these developers probably aren't looking to sell to you.
Besides, I doubt most people know how to turn off background activities.
Seems somewhat plausible to me.
There was some statistics last year that shows only 50% of iOS users sync their iOS devices regularly, which means those people went out of their way to go and get the OS update. I still can't believe this fact.
Now that iOS does update over the air, of course more iOS users will update quicker. Especially when the update comes straight from Apple, but the fact that iOS users upgrade their OS very quickly before 5.0 still impressed me.
Carriers and Samsung are poison.
Cupcake: ~ 1 million
Donut: ~ 2 million
Eclair: ~ 18 million
Froyo: ~ 67 million
Gingerbread: ~ 276 million
Honeycomb: ~ 10 million
Ice Cream Sandwich: ~ 100 million
Jelly Bean: ~ 6 million
- Symbian
- Gingerbread by itself
- iOS as a whole
- Android as a whole