Slashdot Mirror


Google Android — a Universe of Incompatible Devices

snydeq writes "Galen Gruman writes about the dark side of the recent flood of Android smartphones: versions run amok. 'That flood of options should be a good thing — but it's not. In fact, it's a self-destruction derby in action, as phones come out with different versions of the Android OS, with no clear upgrade strategy for either the operating system or the applications users have installed, and with inconsistent deployment of core features. In short, the Android platform is turning out not to be a platform at all, but merely a starting point for a universe of incompatible devices,' Gruman writes. 'This mess leaves developers and users in an unstable position, as each new Android device adds another variation and compatibility question.' In the end, Google's naive approach to open sourcing Android may in fact be precipitating this free-for-all — one that might ultimately turn off both end-users and developers alike." As reader donberryman points out, you can even put Android onto some Windows Mobile phones, now.

4 of 636 comments (clear)

  1. no upgrades?? by ccole8 · · Score: 5, Informative

    This is so completely untrue! Android checks for upgrades every 24 hours, and allows you to easily upgrade any of your applications or the entire OS itself. I've owned the Droid since it first came out, and the ease of upgrading is one of the features I've been fairly impressed with.

    1. Re:no upgrades?? by Mr.Bananas · · Score: 5, Informative

      Um... I think by "easily upgrade" you mean "easily upgrade to any level sanctioned by your mobile carrier." For example, the Samsung Moment is stuck at version 1.5 right now until Sprint feels like letting its users upgrade to 1.6. The G1 I think is at 1.6 by now, but only after T-Mobile felt like issuing updates. Meanwhile the Droid is at 2.0 until Verizon feels like rolling 2.1, and the Nexus One is at 2.1, which is currently the latest version.

      So... yeah, the article raises a good point. It also highlights one of the benefits of rooting your phone- the *real* open source community behind Android is the modders, which try their best to keep your phone at the highest level of Android the hardware can take. I think the Android OS has incredible potential at the end of the day to really be something special, but standardization may be one of its biggest roadblocks. The steadily loosening death-grip of the carriers needs to completely go away, though.

  2. Re:Just like desktop linux. by Anonymous Coward · · Score: 5, Informative

    No it isn't. The "problem" the author is talking about is no different than the "problem" with developing for Windows, desktop Linux, server Linux, Windows Mobile, BREW, J2ME, BlackBerry, etc... Basically its a "problem" with *every* platform - including the iPhone now that iPhone apps are supposed to work on the iPad (different form factor, screen size, features, etc...)

    However, unlike all those other platform, Android supports some *very* powerful tools in resource selection and defining what API you are targeting. Target the 1.5 SDK, and it will work on 1.6, 2.0, and 2.1 because Android *knows* what SDK you are targeting. You can also specify that the "bg_image" resource be different based upon various criteria like screen DPI, whether it is in portrait or landscape mode, etc... and Android will pick the right resource without the developer needing to do anything in code. It is a very powerful system that works very well. You can also define what features your app requires. Require a trackball? You can tell Android that you require one. Require a tilt sensor? Tell Android you require one.

    The real problem is that developers go into Android thinking that its development model is the same as every other platform and it just isn't. Google solved so many of the problems that these journalists are writing about and they solved it so elegantly. Spend 10 minutes reading through the Android SDK documentation and you will quickly see how incredibly non-issue many of these "developer complaints" are.

  3. Re:J2ME again by IamTheRealMike · · Score: 5, Informative

    As somebody who has written an app for both J2ME and Android, that comparison is really far out.

    There are some key differences between J2ME and Android:

    • Android is an implementation, J2ME is a spec. Developing for J2ME is a nightmare because practically every phone has a unique combination of serious bugs. This isn't true of Android because every phone is working off the same core code. If manufacturers want to modify that code, that's OK, there's a test suite they have to pass if they want certain things.

    • Androids "fragmentation" is actually simply that not everyone has upgraded yet - no different to any other platform (including the iPhone). But Android manufacturers have a history of upgrading versions, and I don't see much reason for them to change this: customers demand it and because Android is open source, doing the upgrade is effectively "free" by mobile development standards, even for things like Sense UI (the APIs are backwards compatible).

    • You can see what versions are in use. So there's no guessing about what you can or cannot use, API wise, it's easy to see.

    • Android explicitly supports writing apps that run on multiple platform versions, where as J2ME never really did. For instance you can hide your app from earlier devices (in the market), or you can make your app gracefully degrade on older devices.

    • Android does actually standardise hardware, it just doesn't standardise on exactly one set. For instance, you can assume all Android devices have a decent touch screen, a display that uses one of a handful of resolutions and so on.

    • Google only lets manufacturers distribute certain closed source apps (like Market) if they meet certain conditions. Google has every incentive to keep as many people on the latest version of Android as possible. They have the leverage needed.

    In short, it's a slow news day and InfoWorld know how to stir up a story.