For developers, fragmentation within the Android eco-system is often called the most serious time and cost factor when developing mobile applications which have to work across a wide number of different devices. As shown in a report by OpenSignal, fragmentation can be broken down in two categories:
- Hardware fragmentation: Nearly 12.000 different Android devices were tracked in 2013 which bring various screen sizes and hardware capabilities.
- Software fragmentation: Currently, 8 versions of the Android operating system are in use. For example, API versions 2.3.3 to 2.3.7, released in early 2011, still have a share of about 30% of the tracked devices.
As outlined in an article on Ars Technica by Ron Amadeo, Google now seems to be addressing the problem of software fragmentation.
According to the article, the fragmentation of Android operating system versions is mostly caused by the underlying process of how to roll out new OS versions: After a new Android version is finished, it is delivered to OEMs where the OEM specific UI is then ported to the new version. After that, it is rolled out to carriers and finally delivered over-the-air to end users. This process usually takes several month and since it also takes a lot of effort, less popular devices probably don't get updates at all.
As Android updates roll out slowly, Google more and more uses an application called Google Play Services to install new functionality on devices:
Play Services has system-level powers, but it's updatable. It's part of the Google apps package, so it's not open source. OEMs are not allowed to modify it, making it completely under Google's control. Play Services basically acts as a shim between the normal apps and the installed Android OS. Right now Play Services handles the Google Maps API, Google Account syncing, remote wipe, push messages, the Play Games back end, and many other duties.
With this concept, it is possibly for Google to roll out new functionality within days after it was announced. Furthermore, Google keeps extracting applications like Mail, Maps or Calendar from operating system moving them to the Play Store and making them updatable by end users.
Though the fragmentation problem on hardware level will still exist, this will be a great improvement regarding the software fragmentation. When central parts of the Android system can be updated without involvement from OEMs and carriers, developers will find more support for recent APIs on broader device base to build their apps.
Community comments
Fragmentation is dead; long live fragmentation!
by Mike Leahy,
Re: Fragmentation is dead; long live fragmentation!
by Ralph Winzinger,
But, how to deal the problem when OEMs don't install Google Play Service in their devices?
by meng joe,
Re: But, how to deal the problem when OEMs don't install Google Play Servic
by Ralph Winzinger,
Re: But, how to deal the problem when OEMs don't install Google Play Servic
by meng joe,
Re: But, how to deal the problem when OEMs don't install Google Play Servic
by Ralph Winzinger,
Re: But, how to deal the problem when OEMs don't install Google Play Servic
by meng joe,
I agree software fragmentation is a big problem, but not hardware fragmentation.
by Luis Cabral,
Re: I agree software fragmentation is a big problem, but not hardware fragm
by Ralph Winzinger,
Fragmentation is dead; long live fragmentation!
by Mike Leahy,
Your message is awaiting moderation. Thank you for participating in the discussion.
>According to the article, the fragmentation of Android operating system versions is mostly caused by the underlying process of how to roll out new OS versions
Step #1.. Never rely on blogs and articles that speak of Android fragmentation because they are usually all wrong at least from a developers point of view. OS & device differentiation is not fragmentation.
What fragmentation really is are the major bugs and flaws that get introduced via the Android SDK due to poor testing / QA that are hard locked to firmware / OS versions. This will always be a source of fragmentation regardless of how large Google Play Services grows. Until the app dev SDK layer can be updated seamlessly real fragmentation, the kind that is never spoken about in blogs / articles / press, is not going away and there is plenty of it and new OS versions including 4.3 have not abated serious issues from slipping through.
Re: Fragmentation is dead; long live fragmentation!
by Ralph Winzinger,
Your message is awaiting moderation. Thank you for participating in the discussion.
Well, the statistics about fragmentation are taken from OpenSignal's report, not from the blog. And looking at the OS version distribution, I would call this fragmentation. But it could be, that problems you mentioned are actually worse - I can't comment on that. Any other opinions out there on this?
But, how to deal the problem when OEMs don't install Google Play Service in their devices?
by meng joe,
Your message is awaiting moderation. Thank you for participating in the discussion.
But, how to deal the problem when OEMs don't install Google Play Service in their devices?
Re: But, how to deal the problem when OEMs don't install Google Play Servic
by Ralph Winzinger,
Your message is awaiting moderation. Thank you for participating in the discussion.
Then, most of the apps won't work anyway. Play Services seems to be a core component of the OS which is always present, always running and can be updated silently.
Re: But, how to deal the problem when OEMs don't install Google Play Servic
by meng joe,
Your message is awaiting moderation. Thank you for participating in the discussion.
In China, many mobile makers customize the android rom. The custom rom usually don't have the Play Service, and the app can not use it. How can google resolve the problem?
Re: But, how to deal the problem when OEMs don't install Google Play Servic
by Ralph Winzinger,
Your message is awaiting moderation. Thank you for participating in the discussion.
Well, as far as I know, not all applications will work properly after the play services are deleted. And if Googles strategy really is to put more and more core functionality into these services, more and more apps won't work. Google play services are installed by default and will automatically re-install when deleted. But even iOS, which is a closed system, can be jailbroken and altered. I don't think that Google can eventually resolve this problem, since there will always be a way to break into the system. But there might come a time when a phone becomes useless after deleting the play services ... then it won't make any sense to delete them and the problem is solved.
Re: But, how to deal the problem when OEMs don't install Google Play Servic
by meng joe,
Your message is awaiting moderation. Thank you for participating in the discussion.
Ralph Winzinger, thank you for your reply, I think you are right. This problem will be resolved finally one day. this is my google mail account: dreamer0924@gmail.com. We can discuss some problem by mail or gtalk if you want.
I agree software fragmentation is a big problem, but not hardware fragmentation.
by Luis Cabral,
Your message is awaiting moderation. Thank you for participating in the discussion.
One of the strongest points of Android is exactly the plethora of devices available, which gives consumers the power to choose whatever best fits their needs in terms of functionality, design and specially price. This breeds competition and innovation.
Compare it to iOS: consumers have virtually no choice in terms of hardware for phones or tablets, have to pay whatever the asked price is and usually have to wait quite a long time for real new functionalities rather than just cosmetic changes.
Re: I agree software fragmentation is a big problem, but not hardware fragm
by Ralph Winzinger,
Your message is awaiting moderation. Thank you for participating in the discussion.
You're definitively right from the customer's point of view. But for developers, hardware fragmentation is a problem in my opinion. If you want to write software that runs on every Android device, you will have to design your interface very carefully to look good on various screen sizes. You will also have to consider that certain device capabilities may be present ... or missing. These problems are no showstoppers, but they make our (devs) lifes harder. In the iOS world you will almost only care for "iPad-size" or not. Most of the devices do have latest software and more or less identical capabilities (with the exception of a new sensor every now and then).