“We are pleased to announce that the full SDK for Android 3.0 is now available to developers. The APIs are final, and you can now develop apps targeting this new platform and publish them to Android Market. The new API level is 11. For an overview of the new user and developer features, see the Android 3.0 Platform Highlights. Together with the new platform, we are releasing updates to our SDK Tools (r10) and ADT Plugin for Eclipse (10.0.0).”
Well, developers can publish new apps to the Android Market that will run on 3.0. So let’s take stock: there are now phones that run Android 2.1; some with 2.2; a very few with 2.3; Google has announced 2.4 to be a tablet-only OS, and 2.5, the phone version of 2.4. And now here we are with 3.0.
What a huge mess for these developers, trying to make an application that will provide them with a good revenue stream, while also trying to make their application work on the widest spectrum of phones that will also increase that revenue stream, which right now is 2.1 and 2.2, all the while trying to develop for phones with capabilities that do not even exist right now. And yet Android apologists will fight any implication that the platform is fragmented.
Lest anyone think that I am an anti-Android hater, I have a Nexus One, the flagship Google phone at one time, which, Google promised back in November, that Android 2.3 Gingerbread would become available for “in a few weeks” and it still has not shown up.
It’s not fragmented, you can just make 2.2 application and all newer will run it. Even with that you can use awesome tools to target newer versions without coding or better just code it so it uses new stuff if available. Also you can anytime download awesome cooked ROMs and install them without problem, Google supports this. I think people are just lazy on updating there phones.
People are NOT lazy about updating their phones. The vast majority of phones are updated over the air through the carriers, not by users going to hacking sites and using unofficial ROMS.
Notice how it’s always non-developers saying “omg the Android fragmentation makes it super-duper hard for developers to create apps for Android,” while any developer will generally tell you there’s really no problem.
Sure I test my Android apps on multiple versions, but I do the same for my iPhone apps. Nothing can really go wrong if you just pick a minimum version you want to support and make sure you only use features supported in that version.
Also, your story about Android versions is inaccurate.
You say my list of Android versions is incorrect. Would you please correct me so that I as well as other viewers of this site can see the correct list?
Google hasn’t said what number the next version will be, only that it will be named “Ice Cream”. Also they have said the next version (or the one after that) will unify the Tablet version with the phone version.
Why would they make 2.4 a tablet version if 3.0 is here already?
There is no 2.4 and 2.5.
We have 2.3, for phones, and 3.0 for tablets only.
From what I read, the next version will be based on 3.0, but with support for phones.
So if you want to code an app just for tablets, using more screen state and such, use 3.0.
If you want to code an app for most phones out there, just use 2.1 and take care with multi-resolution issues.
And if you want to use new stuff like renderscript and fragments for apps that work on tablets and phones, you have to wait a little.
Not as terrible as you are pointing out…
2.4 does/will exist: http://phandroid.com/2011/02/21/once-and-for-all-android-2-4-is-sti…
Come back, when android developers announce it. Even then, 3.0 is now API level 11 and Gingerbread is now at level 10. There will be no level 10.5. So if they port back some of the features of 3.0, API(the thing that developers care about most) will not change.
Well, then you are the only one who tests your iPhone apps on all models, because it’s a pain in the ass to own an iPhone 3G these days, as most of the apps run like crap
Android isn’t fragmented, its’ just “<insert long winded explination which basically says Android is fragmented here>”.
The fragmentation is not purely on the API level, varying degrees of hardware create an effective barrier to entry for applications which are required to perform with any degree of effectiveness.
So yes, Android is quite fragmented, and even worse, some of the issues you really can’t work around except for excluding them from your target audience.
Look at most notable video games on Android, notice how a lot of them say “Only supported on devices X, Y, and Z”. That’s not fragmentation?
Let’s get real here.
Geez, now games can’t have hardware requirements ?
In the PC world, if you run Crysis, you know that you’ll need some monster hardware and that your average €300 laptop bought for word processing won’t do the trick, at least not smoothly. That’s what the “recommended configuration” and websites like canyourunit are here for. In the realm of consoles, you know for sure that a PS3 disc won’t work on a PS2 and that an xbox 360 disc won’t work with an xbox. Why should it be different with phones ?
Edited 2011-02-24 07:40 UTC
When someone buys Android, or a Windows Phone, or iOS, they should be able to buy it and think “Okay I know this phone will run all my apps and all my games” not “well MAYBE this will run all my apps and all my games, and I REALLY hope that 4 months into my 2 year contract I’m not left out in the cold with an update”
Is every user supposed to look up the GPU on the SoC of a phone and check if their favorite game even gives a damn?
From a developer perspective, they are sold on the fact that Android has a massive install base, 300k activations a day yada-yada, but what good is it if you cant leverage that due to immense fragmentation?
It is no good. My point is people need to stop pretending like fragmentation does not exist, and is not a severe problem on Android. It is.
And please don’t try to use the endlessly fragmented PC gaming world as some sort of gaming nirvana. Nothing should ever try to emulate that.
As for your gaming console, I think your analogy is stupid. You know for sure that ALL PS3s will perform nearly identically, and ALL 360’s will perform nearly identically.
You’re oversimplifying this to the point of insanity. Don’t.
I’m not saying that fragmentation does not exist. I’m saying that it is necessary and that it’s a very good thing.
What is the contrary of fragmentation ? A perfectly consistent experience and perfect app compatibility across all devices. There are two ways of doing this : either there is only one device on the market, or apps are created to run on the least common denominator of hardware and feature set.
The problem is that this doesn’t work as soon as hardware power and app needs are evolving. Some new hardware must come out of the door. Thus we see iPhone 3G, iPhone 3GS, iPhone 4. PS2 and PS3. Xbox 360. And every single release of the Game Boy and DS since the GB Pocket.
If my old Xbox can’t run games for the new Xbox, that is fragmentation : apps have hardware requirements, I need to buy new hardware for them to work. I can’t keep my old hardware forever.
Yeah, exactly like on the desktop. Any platform with evolving hardware is fragmented.
Now, why is fragmentation a good thing ? After all, people are not pleased that Xbox 360 games do not run on their old Xbox, right ? First, being able to introduce hardware requirements helps apps to evolve, because they don’t have to support every single piece of hardware in a family (imagine if any new DS game had to have a version on the original Game Boy, including those who make great use of the stylus). Second, more hardware available means more choice for the user. If I only run not very demanding apps and don’t have much money, I can keep my old PC or buy a cheap one.
Wjy would I have to buy a PC that’s able to run Crysis if I only want to play word of Goo ? To please fragmentation-haters’ sense of correctness ? If you can accept that there are cheap PCs which are only good for work, why can’t you accept that there are phones which are only good for apps with low requirements ? Why should everyone spend $700 in a phone ?
Edited 2011-02-24 17:46 UTC
2.3.3 has arrived today for your nexus one. Enjoy…
2.3.3 has indeed been released today, but it will be rolled out over the “new few weeks” to NexusOne and NexusS owners. Isn’t this the same term Google used back in November for 2.3? So forgive me if I will not be holding my breath waiting for this update to show up on my phone. Like I “normal” user, I will wait for the update to be rolled out by Google over the air.
Edited 2011-02-23 17:17 UTC
Have you done any development?… just curious, neither have I. I’m not too sure there are any big changes that developers care about. Are there any API changes at all from 2.1 to 2.2 to 2.3?
I would imagine there are very few applications that care what minor version the phone is running.
I am not a developer. I approach this announcement from the standpoint of a user. I have an Android phone, the NexusOne, which currently has FroYo on it, Android 2.2. Google announced back in November that Android Gingerbread, version 2.3 would be coming to NexusOne users “in a few weeks”. It became available today, albeit as version 2.3.3. Becoming available today does not mean my phone will get it today, nor any time soon, based on the fact the update was originally announced almost 3 months ago. Meanwhile Google has already announced the tablet version of Android, and has announced the phone-centric version of this tablet version, and they have today announced, via the article that is the subject of this article, version 3.0 of Android, which I have to assume will be for phones and/or tablets. So, while my NexusOne might someday be updated to Gingerbread 2.3, it and the NexusOne’s of other owners will still be several versions out from the most current software, and will as a result, be missing some of the tweaks and updates that would bring it fully up to date. I hope this clears up where I am coming from.
Edited 2011-02-23 17:26 UTC
2.3: The newest for phones right now.
2.4: For phones, mostly the same with 2.3. This will be a update mostly to enable apps written for 3.0 to run on phones.
3.0: For tablet only.
Ice Cream: Version number not announced yet. This will bring 2.x and 3.x lines together and provide a single version for both phones and tablets.
My heart too is severely broken and bleeding that the bastards at google cheated you with three months!!! of waiting. How dare they! But rest assured that the latest update for your phone is being rolled out.
Gees…
2.4, if it ever comes out, will not be “the version that supports tablet apps on the phone”. Google devs are already planning on releasing the library that will bridge the gap(I guess I am the only one that actually reads the android-developers group messages). And the library will work on devices down to version 2.1 and possibly version 1.6.
Thank you, I appreciate the sympathy. I will get back to you in another 3 months if my phone still hasn’t received this 2.3.3 update “over the next few weeks”.
2.3.3 is the most current version for phones, to correct your numbering.
It is the same situation as the fact that the next generation of cellphones, in order for them to be used anywhere in the U.S. for example, will need to support the following:
For GSM: EDGE, 3G, HSDPA+, and LTE because all these standards will be in use, depending on where you live. I doubt there will ever be a 4G-only or LTE-only phone, just as there isn’t a 3G-only phone.
people like to spread FUD for their favorite companies in comments. the more people have internet, the more intense this activity, specially on tech sites.
shame, humans, shame.
When a preview SDK was released there were articles saying it was painfully slow to the point of being useless even on a well spec’d system.
Installed here, it’s running 10x faster. It’s still *very* slow on my system, but at least now you can actually use it..