To the general public, Google is synonymous with Android in large part because of Google Mobile Services (‘GMS’). GMS refers to a mix of popular apps and backend services (provided by Google) that run on Android. For the most part all consumer Android tablets and smartphones have GMS on them. When making a custom Android product for use in business, commercial, industrial or medical settings GMS becomes less vital; in many cases unwanted. This article explores what benefits GMS brings to Android products and why it’s not suitable for many custom Android products.
What is GMS?
Pure Android, often referred to as Android Open Source Project (‘AOSP’), is a robust, mature, and flexible mobile device Operating System. Since Android is open source many companies have spun off unique versions of Android. An online search for ‘custom Android ROM’ comes up with scores of examples. Apps are installed on top of the base Android OS. GMS includes many popular apps such as Google Maps, YouTube, Gmail, Play, and several others. GMS also provides services that improve the Android experience like auto app updates, location services, notification services, and others.
A product that comes with GMS has passed a series of performance and usability tests. CTS and GTS are automated software based tests that test the devices’ hardware performance and compatibility with Google apps, respectively. These tests ensure that any Android device (with GMS) will satisfy a user’s expectation of quality and, regardless of the brand, all Android devices provide a similar user experience.
This works well for consumers and for Google. Consumers get a great device and operating system loaded with useful apps for free. Google, an advertising company that leverages user data to deliver high value ads, gets more user data to monetize. The amazing free software Google provides, like Android or Google Docs, the software this article is written on, all serve the business case of delivering high value ads.
Is GMS necessary for a custom Android product?
While GMS works great for consumer devices, many companies producing custom Android devices for alternative uses (commercial, business, medical, industrial) just want Android and not Google. GMS comes with a lot of obligations for manufacturers. Firstly to get GMS the device must use the newest version of Android. Using the newest version of Android poses a problem for custom devices. Most custom Android devices run a special app. App development happens at the beginning of a project; usually on a generic retail device, well before starting a custom device. Between the time app development starts and mass production of a custom product several versions of Android could have passed. The brand has no reason to update the Android version and probably reasons not to. Updating the Android version means having to retest the app and modify the code so the app works smoothly with the new Android version. New versions of Android usually have updates which benefit consumers, but only sometimes are relevant to custom products. Custom Android products need stability more than the latest feature updates.
Meeting the requirements of GMS limits the customization possibilities. Hatch does varying degrees of firmware modification on all of our projects. Due to the kind of customizations Hatch’s clients need, most products wouldn’t pass CTS and GTS, prerequisites to obtain GMS. Beyond this, GMS is the link between Android and Google. Companies may not want to share information about their business with Google.
How does not having GMS affect Android’s usability?
On the surface, devices with GMS certification come with some of the most popular Google apps like Maps, Play, YouTube, Gmail, and several others. Under the surface GMS powers important features like location services and OTA updates. While Google’s apps aren’t usually applicable to speciality Android products used for commercial, industrial, or medical purposes, the backend services are useful. Devices that don’t come with GMS need alternative ways to include these important backend services. Brands can either manage these services by themselves, use outside companies or open source projects (like F-Droid and MicroG) that offer ‘GMS-alternative’ services.
Google has a mobile device management (‘MDM’) platform for enterprise customers. To use Google’s MDM software the device must have GMS. There are third party MDM providers that provide the same services without the restrictions inherent to GMS. Retail products struggle to find a seamless alternative. Huawei was forced to create an alternative when they lost the right to work with Google. They came out with HMS to replace GMS, but Huawei is one of the biggest mobile phone manufacturers in the world. Not everyone has such deep pockets, and even HMS struggles to compete with GMS from a user experience standpoint.
What’s the verdict on GMS?
In most cases custom Android devices made for specific use cases not only work well without GMS, but don’t need GMS and wouldn’t meet GMS certification requirements anyway. Removing the challenges that come with having GMS opens up possibilities to fully customize Android hardware. Alternative software solutions exist for replacing the parts of GMS that non-GMS devices need. So, for the most part, GMS is great for consumer Android products, but isn’t necessarily beneficial to custom Android devices.