There are too many simultaneous permutations of almost the same hardware, forcing developers to build a plethora of native code implementations of the same software, all of which are nearly impossible to keep aligned with one another. No, that's not a complaint about Android. That's a complaint by many Android developers about building for ARM, the adaptable architecture that comprises the majority of today's smartphone platforms, including Qualcomm's Scorpion processor, for the first generation of its Snapdragon architecture.
This morning, ARM is taking a significant step toward ironing out Android's multiple versioning issues that Linus Torvalds himself called a "hodgepodge" earlier this year. It's releasing suites of developers' tools, including a free community edition, of its ARM Developers Studio (DS-5), this time including a graphical debugger that it says will eliminate the need for devs to use a clunky, command-line debugger for tuning native code.
Up to now, Android developers using a still-prevalent PC operating system called Windows found themselves utilizing a kind of Linux envelope called Cygwin in order to run the command-line debugger ndk-gdb supplied with Android Developers' Kit's native code kit, the NDK. Now with DS-5, devs will be able to use Eclipse in Windows to graphically debug native code for ARM processors, using a replacement debug server supplied by ARM.
According to ARM documentation released this morning, the new gdbserver will also open up access to ARM's NEON registers, an architectural extension for Scorpion processors that expedites multimedia handling. So there's a good possibility that all Android developers, including those who work from a Linux desktop, will have access for the first time to ARM technologies critical to high-speed video.
Last March, as first reported in Bloomberg BusinessWeek, Google began a process of insisting its hardware partners stop fragmenting the Android platform. But with ARM technology designed to be adaptable to unique and sometimes exclusive form factors and functions, and with so much of the development kit relying on the ability to compile native code alongside Dalvik (Java) code, some degree of fragmentation has been inevitable.
With the forthcoming "Ice Cream Sandwich" version 4.0, Google is expected to sew up the most important fork in the road for Android: the one that splits tablets from smartphones. An iOS app can detect whether it's running on an iPhone or an iPad, and an Android app should have analogous functionality.
The Community Edition of ARM DS-5 is downloadable now, and is free for organizations of 10 employees or fewer, whose annual revenue falls below $100,000.