When we talk about Android, most users immediately imagine a smartphone interface with the Google logo, the Play Market store and the usual set of applications. However, under the hood of this ecosystem lies a foundation that is open to everyone. Android Open Source Project, or for short AOSP, is exactly the basic version of the operating system that Google makes available to the public.
Exactly AOSP is the source code on which all modifications are built, including proprietary shells from Samsung, Xiaomi or Huawei. Understanding the difference between a "pure" project and what we see in electronics stores is critical for enthusiasts, developers and those who want to take full control of their device.
In this article we will take a detailed look at the project's architecture, explain why manufacturers add their add-ons, and look at how the lack of services Google influences the operation of the smartphone. You will find out whether it is possible to use a device only based on AOSP in everyday life and what hidden possibilities this platform opens up.
Architecture and essence of the AOSP project
The open source project is managed by Google, but this does not mean that the giant controls every change. Any developer can go to the repository, study the code, suggest improvements, or create their own build. This makes Android ecosystem the most diverse mobile OS on the market.
The core of the system is based on a modified version of the core Linux, which ensures interaction between the hardware (processor, memory, sensors) and the software layer. Above is the hardware abstraction level (HAL), which allows developers to write code without being strictly tied to a specific hardware.
It is important to understand that AOSP is not a ready-made product for the end user in its pure form. This is a set of tools, libraries and (frameworks) that allow you to build a working operating system. Without additional components, such as drivers from chipset manufacturers (Qualcomm, MediaTek), the system simply will not run on a specific device.
AOSP source code is updated simultaneously with the release of new versions of Android, but manufacturers gain access to it with a delay necessary to adapt it to their devices.
Many people confuse the concept of openness with a lack of control. In fact, Google sets the development vector through the code that ends up in the main development branch. However, if a feature is not liked by the community, fork projects can easily remove it, leaving only the necessary functionality.
Key differences between AOSP and Google Mobile Services
The biggest misconception is that Android and Google services are the same thing. In fact, these are two different entities that are often shipped together, but are legally and technically separated. Google Mobile Services (GMS) is a proprietary set of applications and APIs, the licensing of which requires device certification.
Devices running exclusively on AOSP do not have access to proprietary services of the corporation. This means no Google Play Store, Gmail, YouTube and, critically, background push notification services (FCM). That is why Chinese manufacturers, entering the domestic market, create their own application stores and notification systems.
- ๐ฑ App stores: AOSP does not have a built-in market; users rely on third-party solutions like F-Droid or direct installation of APK.
- ๐ Notifications: Without GMS, applications cannot work correctly in the background and receive push notifications without a permanent active connection.
- ๐บ๏ธ Maps and locations: Standard Google Maps are being replaced by OpenStreetMap or proprietary solutions from Huawei and other vendors.
The lack of GMS also affects the operation of banking applications and services with a high degree of protection (SafetyNet/Play Integrity API). Although there are methods to bypass these restrictions, they require deep technical knowledge and constant support from the community.
โ ๏ธ Attention: Installing Google services (GApps) on devices not certified by the manufacturer can lead to unstable system operation, failures in payment via NFC and blocking of some banking applications.
Why do manufacturers need custom skins
Why doesn't Samsung sell phones with pure AOSP, but offers One UI? The answer lies in differentiation and monetization. "Pure" Android looks ascetic and does not provide unique functions that would force the user to choose this particular brand over dozens of others.
Manufacturers take the stable AOSP core as a basis and build their interface on top of it, changing the visual style, adding control gestures, multitasking modes and proprietary utilities. This allows you to create a unique user ecosystem. For example, MIUI from Xiaomi or ColorOS from OPPO offer functions that are not available in stock Android.
In addition, customization allows you to optimize the system for specific hardware. The company's engineers can rewrite camera drivers or power saving algorithms in a way that is not done in the basic version of AOSP. This often gives an increase in autonomy or quality of images compared to the reference implementation.
| Component | AOSP (Base) | GMS (Google Services) | Custom UI (Shell) |
|---|---|---|---|
| Availability | Open source | Proprietary license | Vendor dependent |
| App store | None | Google Play | Branded store + Play |
| Interface | Minimalistic | Integration into the system | Unique design |
| Updates | Directly from Google | Depends on certification | Delays in adaptation |
Custom shells are not just โskinsโ, but a deep reworking of system processes to improve user experience and retain the client within the brand.
Advantages of using pure AOSP
For advanced users and developers, the clean version of the system has a number of undeniable advantages. The main one is the absence of unnecessary software, which is often called bloatware. The stock build does not have pre-installed games, advertising recommendations, or services that cannot be removed.
This directly affects performance. Fewer background processes means less CPU and RAM load. Smartphones based on pure AOSP or similar firmware (like Pixel or Android One) often run smoother on the same hardware as their competitors with heavy shells.
The issue of privacy also comes to the fore. By using the system without being tied to a Google account, you minimize the amount of telemetry sent to the corporationโs servers. You decide which applications to give permissions to, and the system does not try to force you to synchronize data against your will.
adb shell pm list packages -s
This command will list only system applications in AOSP
For developers, a clean environment allows you to test applications under reference conditions. If a app works correctly on AOSP, the likelihood that it will break on a specific device with custom firmware is reduced, since deviations from the standard become more noticeable.
Risks and difficulties when working with open source
Despite all the advantages, switching to devices or firmware based strictly on AOSP is associated with certain difficulties. The main problem is fragmentation and the lack of a unified security standard. Google regularly releases security patches, but in an open source project, their implementation depends on enthusiasts or the manufacturer.
The user may encounter a situation where a critical vulnerability in the Linux kernel has not been fixed for months. Unlike certified devices, where the vendor is responsible for this, in the world of custom firmware the responsibility falls on the shoulders of the developer community.
โ ๏ธ Attention: AOSP-based firmware from third-party developers (LineageOS, Pixel Experience) may contain errors that lead to data loss or inoperability of communication modules. Always make a backup copy before installation.
Another point is hardware compatibility. Drivers for cameras, modems, and sensors are often private binary blobs. If the firmware developer fails to correctly integrate them into the new version of Android, you risk getting a smartphone without working sound or Wi-Fi.
What are binary beans (Blobs)?
These are proprietary drivers whose source code is closed by the hardware manufacturer (for example, Qualcomm). They are necessary for the operation of specific hardware, but they are difficult to update when moving to new versions of Android, since they may be incompatible with changes in the kernel.
How to install and configure the AOSP environment
If you want to try building your Android or simply install custom firmware, you will need to prepare a working environment. To build from source, you will need a powerful workstation with Linux OS (preferably Ubuntu), a large amount of RAM (at least 16 GB) and a fast SSD.
The process begins with installing the necessary packages and cloning the repository through the tool repo. This is a meta-tool written in Python that manages the many Git repositories that make up the Android project.
- ๐ป Terminal: All operations are performed via the command line, requiring knowledge of basic Linux commands.
- ๐ Signature keys: Test keys are used to build test firmware, but for personal use it is better to generate your own.
- ๐ฆ Dependencies: You must install the JDK (Java Development Kit) of a strictly defined version, otherwise the build will be interrupted with an error.
โ๏ธ Preparing for the build AOSP
For an ordinary user who does not want to compile, there is an easier way - installing ready-made custom firmware. To do this, you need to unlock the device's bootloader, install a custom recovery (for example, TWRP) and flash the archive with the system.
Remember that unlocking the bootloader often voids the warranty and triggers security flags (for example, Knox on Samsung), which irreversibly disables some device functions, such as a secure folder or contactless payment.
Is it possible to get root access on a pure AOSP?
Yes, since you control the entire build process or use an unlocked bootloader, obtaining root access on AOSP is much easier than on certified devices. It is enough to flash a patched kernel or use Magisk.
Is it safe to use banking applications on AOSP?
The default is no. Banks require a certified Google Play environment and system integrity checks. However, with the help of tools for hiding root access and replacing the device fingerprint (Magisk Hide, Zygisk), the operation of banks can be restored, but this is an arms race with security developers.
How is AOSP different from LineageOS?
AOSP is the โas isโ source code from Google. LineageOS is a ready-made custom firmware based on AOSP, but with added features, privacy improvements, support for older devices and removed Google services (these can be installed separately).
Why does Google open source Android?
This is a strategic move to dominate the market. The more devices running Android, the more users are engaged in the Google ecosystem (search, maps, video), even if they don't use the services directly. In addition, the community helps find bugs and develop the platform for free.
Can AOSP work without the Internet?
Yes, the basic system is fully functional offline. However, installing applications, synchronizing time, and running many modern services will require a network connection. Unlike iOS, there is no strict link between device activation and the developerโs servers.