Certification of an Android device is a critical step for any manufacturer who wants to legally release their product on the global market. Without this process, the gadget will remain just a set of hardware with open source AOSP, deprived of access to the Google ecosystem. Users of modern smartphones are accustomed to the presence of default services: navigation, mail, app store Google Play and contact synchronization.
The process of obtaining a certificate Google Mobile Services (GMS) is complex, multi-level and strictly regulated. It requires the vendor not only to have the firmware technically ready, but also to meet strict security and performance standards. Errors at the preparation stage can lead to refusal of certification, which will make the device uncompetitive in most regions of the world.
In this article we will analyze in detail all stages of the procedure, from registering in the app to passing automated tests. You will learn what tools Google uses to check compatibility and why the presence of the Android logo on the box is the result of long-term work by engineers and auditors.
What is GMS certification and why do you need it?
The abbreviation GMS stands for Google Mobile Services. It is a set of proprietary applications and APIs that are not part of the Android open source code, but are the de facto standard for mobile devices. Certification confirms that a specific model of smartphone, tablet or TV meets all compatibility requirements set out in the document Compatibility Definition Document (CDD).
Without successful completion of this procedure, the manufacturer does not receive the right to pre-install key services. We are talking not only about the store com.android.vending, but also about the frameworks that enable push notifications, maps and a voice assistant. A device without GMS is often perceived by users as โinferior,โ especially in regions where alternative application stores are not developed.
In addition, certification opens access to the app Android Enterprise, which is critical for the corporate segment. Business clients demand security guarantees and the ability to remotely manage a fleet of devices, which is impossible without official support from Google. The status of a certified device also affects search rankings for electronics stores.
โ ๏ธ Attention: Attempts to manually install Google services on an uncertified device often lead to system instability, failures in banking applications and the inability to pass security checks SafetyNet or Play Integrity API.
Hardware and software requirements
Before starting the process, the vendor must ensure that the hardware platform meets the minimum requirements set for the target version of Android. Google regularly updates specifications, raising the bar for processors, RAM, and security modules. For example, for modern versions of the OS it is necessary to have a dedicated block Trusted Execution Environment (TEE).
The software part must be based on the current version of AOSP with the necessary security patches applied. Manufacturers are required to implement all required APIs and ensure that drivers work correctly. Particular attention is paid to the implementation of cรขmera, audio subsystem and communication modules, since this is where compatibility problems most often arise.
A special set of tests is used to check compliance CTS (Compatibility Test Suite). Successful completion of these tests is a prerequisite for applying. It is important to understand that requirements may vary depending on the device form factor: there are different configuration profiles for smartphones, tablets and Android TV devices.
Use reference images from chipset vendors (Qualcomm, MediaTek) as a base. This greatly simplifies passing the CTS tests, since basic compatibility is already provided by the platform manufacturer.
Below is a table with basic requirements for different categories of devices (data may vary depending on the Android version):
| Parameter | Smartphone | Tablet | Android TV |
|---|---|---|---|
| Min. RAM | 2 GB (for Go edition 1 GB) | 2 GB | 1 GB |
| Screen resolution | from 480p | from 600p | 720p / 1080p / 4K |
| Security | StrongBox / TEE | StrongBox / TEE | TEE |
| Sensors | Accelerometer, Gyroscope | Accelerometer | Remote control |
Registration in the app and gaining access to CTS
The first step towards certification is joining the app Open Handset Alliance (OHA). This is a legal process that requires you to sign a non-disclosure agreement and comply with Android's trademark terms and conditions. Only after the application is approved, the company gains access to closed Google resources, including repositories with test software.
After registration, the manufacturer gets access to the portal partner.android.com. Here you need to create a company profile and register each device that you plan to certify. A unique identifier is generated for each product, which will be used when downloading testing reports.
Access to testing tools is provided through a special section of the portal. It is important to correctly configure the environment for running tests: you need a dedicated server or workstation with a specific version of Java and installed drivers adb. Errors at this stage can lead to incorrect test results.
โ๏ธ Preparing for registration with OHA
โ ๏ธ Attention: Conditions for participation in OHA and equipment requirements may change. Before starting the process, be sure to check the current rules in your partner's personal account or the official CDD document for your version of Android.
The process of passing the CTS and GTS tests
The main stage of certification is the launch of a set of tests CTS. This automated complex checks thousands of system parameters: from the correctness of the API implementation to the behavior of the device when there is insufficient memory. The tests must be passed 100%; the presence of even one critical failure (fail) blocks the possibility of submitting an application.
In addition to CTS, there is a set of tests GTS (Google Test Suite). They focus on testing integration with Google services and protection against malware. GTS checks to see if the manufacturer has made changes to the code that could compromise the security or functionality of the ecosystem. These tests are often the most complex for custom shells.
The process of running tests can take from several hours to several days, depending on the power of the equipment and the number of modules. Engineers need to analyze crash logs, fix errors in the firmware and rerun tests. An iterative development process is the norm for most projects.
python run_cts --module CtsSecurityTestCases --include-filter CtsSecurityTestCases#testExample
To speed up the process, it is recommended to use dedicated testing farms, which allow you to run tests on multiple devices in parallel. This reduces the product's time to market (Time-to-Market), which is critical in a highly competitive environment.
What to do if the tests do not pass?
If you receive the "Fail" status, you need to examine the report in XML format. It will indicate the exact error code and call stack. Most often, the problem lies in incorrect implementation of the driver or changes in system properties that block the operation of Security modules.
Security check and STAR (Security and Trust)
In recent years, Google has tightened security requirements by introducing the app STAR (Security and Trust Requirements). This is an additional level of verification that focuses on the device's resistance to hacking, protection of user data, and secure boot.
The manufacturer must demonstrate that the device's bootloader is locked or has strong protection against unauthorized firmware. The availability of current security patches as of the release date and the mechanism for their regular updating are also checked. Lack of guarantees of updates may cause denial of certification.
Particular attention is paid to the protection of biometric data. Fingerprint scanners and facial recognition systems must operate in isolation from the main OS using a secure execution environment. Leakage of biometric templates into regular memory is a critical violation.
Successful completion of STAR is a prerequisite for the right to use the Android logo and Google services on devices released after 2021.
In addition, the implementation of disk encryption and protection against attacks like data-i="103">. Manufacturers are required to provide documentation demonstrating that their solutions meet industry standards. Google auditors may request additional evidence of the security of the device architecture. Rowhammer. Manufacturers are required to provide documentation demonstrating that their solutions meet industry standards. Google auditors may request additional evidence of the security of the device's architecture.
Final submission of the application and receipt of the certificate
After successfully passing all tests and eliminating comments, the final package of documents is generated. It includes CTS, GTS, STAR reports, as well as a declaration of conformity. These files are uploaded through the partner portal, which initiates a manual review process by the Google team.
The application review period ranges from one to four weeks. If inconsistencies are identified, the request is returned for revision. If all documents are in order, the manufacturer receives official confirmation and access to download the package GMS for a specific model.
Only after this the device receives the right to use Android trademarks and the โDesigned for Androidโ logo. The product is included in the database of certified devices, which allows users to see the compatibility icon in the Play Market. From this moment, mass production and distribution begins.
โ ๏ธ Attention: The certificate is issued for a specific model with a specific firmware version. Any significant software update (major version of Android) requires repeating the certification procedure and new tests.
Frequently asked questions about Android certification (FAQ)
How much does it cost to certify a device with Google?
The application review procedure itself and providing access to tests for OHA members free of charge. However, the manufacturer bears the costs of purchasing test equipment, renting servers for running tests and paying engineers who adapt the firmware.
Is it possible to certify a device with an unlocked bootloader?
No, to obtain a GMS certificate, the bootloader must be locked by default. This is a security requirement that guarantees the integrity of the operating system. Unlocking the bootloader by the user is possible, but it will lead to loss of warranty for the operation of some protected services.
What is a CDD and where to find it?
CDD (Compatibility Definition Document) is the main document that describes all the technical requirements for the device. It is only available to registered OHA partners in a private section of the portal. There is no public version of the document.
Can you get certified yourself without participating in OHA?
No, access to CTS and GMS tools is only provided to legal entities that have signed an agreement with Google. Private developers of custom firmware cannot legally certify their assemblies for wide distribution.
How long does the entire certification process take?
On average, the process takes from 3 to 6 months. The period depends on the initial quality of the firmware, the speed at which errors are eliminated during testing, and the workload of Google auditors. For experienced vendors with established processes, the period can be reduced to 2 months.