Android fragmentation: we’ve heard the words so many times we’ve learned to tune them out. Often times, legitimate complaints about Android fragmentation are written off and filed in the category of “haters gonna hate”. But developers trying to make a living on their code do not have the luxury of devolving into fanboy war mentality regarding such things. They have to take every opportunity they can, to learn every lesson they can, to get a foothold in the marketplace of other great apps.
Android fragmentation might be an inconvenient topic on discussion boards, but it provides some excellent insight into what it takes to make great mobile apps.
Never stop testing
If you only get one thing from this article, let it be this: test as if the success of your company depends on it. One of the toughest aspects of Android fragmentation is the fact that there are so many different types of Android phones on the market. It is not just that they all have different sizes and specifications, but that they have different capabilities and levels of performance. When you are writing mission-critical apps for institutions and businesses, you have no idea what types of smartphones and tablets the end user will have.
No individual developer can possibly test their apps on all the possible devices available in the Android market. That does not make testing any less important; in fact, it makes it even more important. Fortunately, you can outsource this process to companies that use automated testing tools. Such services are designed to handle enterprise-level needs, including mobile application testing.
It is hard to gain new customers, and easy to lose them. Making sure your application works as expected the first time is key to customer retention.
Aim for the middle
Another aspect of Android fragmentation is that there are multiple versions of the operating system in the wild. Not just that, but four and five year old versions of the operating system are still being sold on new phones. Apple generally only sells phones with the latest OS version. That makes it very easy for developers to target the majority of iOS customers with apps designed for the latest OS. Android developers have to choose between developing for the latest OS or developing for the majority of end users.
According to the latest numbers from Google, just under 14% of Android devices are running the latest version of the OS, and that has been out for almost a year. That is about as good as it gets on Android. The fat middle of the android market is running a version of the OS that is two to three years out of date.
Making great apps that are tuned for less than 14% of the market may be artistically satisfying, but it will not pay the bills. Developers need to target their apps for the fat middle of the market. For iOS, that would be the latest version of the OS. For Android, that would be older versions of Jelly Bean. That is where the users are, and that is where you have to be.
One of the most tangible problems with fragmentation is the fact that devices running older versions of the operating system almost never get updated. Neither the OEMs nor carriers have any incentive to offer free software updates for their smartphone offerings. Without updates, security vulnerabilities go unpatched. That is one of the main reasons why Android is such a magnet for all kinds of malware. It is because so much of the user base is not updated or patched.
Since most of your clients will be running a system that is not as secure as newer handsets, you have to be responsible for building security into your app. That might mean better password and user data encryption, or a firewall between the user’s critical data and malicious apps that may be on their phone. The user might not be able to update their OS, but they are able to keep their apps up to date. As the developer, you have to provide timely updates to help keep your app safe and secure. If you always assume security is your responsibility, your app will always benefit, and your customers will thank you.
Android is a powerful operating system that provides tons of choice for smartphone users. That is a lot of power for developers. But with great power comes great responsibility. Taking on these responsibilities posed by unavoidable fragmentation can pay huge dividends for you and your customers.