Let’s be honest: As app developers, we’ve always defended the beauty and polish of iOS (and have certainly been slapped with the “Apple fanboy” label more than once).
But something strange has happened the past few months. Many of our employees are starting to carry Android devices as their primary handset — shocking our significant others, families and friends. More notably, our projects are increasingly becoming Android-centric — from a number of native Android apps for our top clients to prototypes and POCs around Android Wear and Google Glass.
What the heck is happening? Isn’t Android supposed to be a total pain for developers like us (as well as our clients)?
As the old argument used to go (and we made this argument for years), developing for Android meant:
- A splintered, “lowest common denominator” experience that forced developers to use outdated SDKs, APIs and tools to ensure the widest possible handset and OS compliance.
- A design and testing minefield with hundreds of device screen sizes, OS versions, hardware features, input gestures and just about every other testing scenario you could imagine.
- A dramatically reduced target audience for your app, because only a small percentage of Android users were capable of accessing certain apps on certain devices.
But things have changed. Android is challenging, but we think it’s time to set the record straight (and remember, this is coming from devoted iOS fans here): Put simply, Android fragmentation in 2014 is a myth.
Since 2010 and even 2012, Google has made huge strides to solve some of the jarring fragmentation issues facing developers. And they’ve done it in some pretty impressive and “behind the scenes” ways.
A large percentage of Android users are still not running the latest version of the Android OS, 4.4 KitKat. And Google is making no bones about that, as it regularly posts the latest OS usage figures on its developer portal. Here are the most recent numbers:
At first glance, it looks like a mess. After all, iOS users are predominantly using Apple’s latest OS (iOS 7), to the tune of over 90 percent of active installs.
Google’s stealth weapon against fragmentation
But that’s not the statistic developers should be looking at. It’s time to talk Google Play Services. Play Services is more important than OS installs when planning and designing an Android app. Play Services, introduced in 2012, is effectively a background download of core services required to run apps on Android. Putting the OS install numbers to one side for a moment, this is the stat that matters to developers – over 93 percent of all Android users are running the latest version of Google Play Services.
More importantly, Google has been slowly moving core Android features, APIs and app elements out of the OS and into Google Play Services — meaning developers can ensure their apps run smoothly (with all the new features they plan to implement) across all devices carrying the latest infrastructure.
Crucially, version 5.0 of Google Play Services is now being rolled out to all Android devices running OS 2.3 Gingerbread up to 4.4 KitKat. This sinks the argument that developers are handcuffed to older OS features to ensure legacy compliance of core elements of their app.
But what about the screen size conundrum, bringing with it the need for expanded testing and for designers, a dizzying variance of layout requirements?
An excellent post by iOS and Android developer Russell Ivanovic helps diffuse the usual argument about the screen size “hell” of designing for Android. Designing for Android is “not that hard,” Ivanovic writes, “and honestly causes us less headaches than most people imagine.”
Many people imagine that the number of potential layouts for Android looks like the frightening graphic below, requiring a specific layout for every screen size variation:
Instead, Ivanovic argues, the real variation in design planning is much closer to this map:
A designer doesn’t have to “re–lay out” the app design for every possible screen size. Instead, through thoughtful use of higher resolution graphics and accounting for minor variations in width and height, almost every screen size can easily be catered to.
So bringing this all back the primary phones in our pockets: As developers, we’re extremely excited about what we’ve seen from Android over the past year. Throw out the fragmentation myth, and the reasons not to engage on Android projects evaporate quickly. Sure, we still love iOS – but developing for Android is simply too enticing to deny any longer.