Column: Android versus fragmentation

By Tim Quax on 08 june 2010

I ran across a rather interesting article on Ars Technica today, about how Android is handling fragmentation. Fragmentation is well known for being a major challenge for both the Linux/Unix/BSD platforms as well as the mobile software systems of today. Considering Android is Linux based, they're in a tough spot.

Fragmentation

The term fragmentation generally refers to the proliferation of diverging variants. Linux is particularly susceptible to this concept, Linux' modularity and open license practically drives the OS forward. However, a situation where many custom versions of a software platform emerge and coexist can easily turn problematic. This fragmentation can weaken interoperability; apps built for one variant might not work on the other.

Android

With the nature of Android and the rapid growth of the Android OS, questions are raised concerning the fragmentation issue. More and more Android devices emerge (over 60 models, selling 100,000 units a day) and every single one of these devices contain heavy software customizations.

Google's approach on the issue

Google's solution is the Android compatibility definition. This document sets the standard every vendor conforms with. This effectively ensures compatibility through all Android models and OS versions that are intended to run third-party applications.

Furthermore, most Android apps are compiled into bytecode that is executed by Google's Java runtime engine. It's because of this the software can work seamlessly across multiple processor architectures. This solves quite a few binary compatibility issues, which you'd have with C# for example. Only drawback is you're using Java.


All and all, Google has taken the necessary steps to prevent fragmentation from ever getting a hold on the system. That's why Google's Android compatibility program manager Dan Morrill has the following to say about fragmentation:

"Stories on 'fragmentation' are dramatic and they drive traffic to pundits' blogs, but they have little to do with reality. 'Fragmentation' is a bogeyman, a red herring, a story you tell to frighten junior developers. Yawn."


The Ars Technica article:

http://arstechnica.com/open-source/news/2010/06/ars-explains-android-fragmentation.ars


Android Devver blog about fragmentation:

http://android-developers.blogspot.com/2010/05/on-android-compatibility.html

Compatibility guide for Android:

http://developer.android.com/guide/practices/compatibility.html

This is a column from Tim Quax's blog. For more of his posts, check out his site.



React on this article







Enter the code here: