Earlier today, Google announced the release of Android 12, the latest major version of the Android OS. While they didn’t push stable builds to Pixel phones today, they did confirm that the source code is dropping today. True to their word, Google has started to upload the Android 12 source code to the Android Open Source Project (AOSP) Git repositories.
Google traditionally starts uploading the source code for every new Android version immediately after releasing stable builds for its Pixel phones. For example, the source code for Android 9 Pie was released on August 6, 2018, right after the stable update went live for the Pixel and Pixel 2 series. Likewise, the Android 10 stable update rolled out for Pixels on September 3, 2019, and it was soon followed by the source code being uploaded that same day. In 2020, Google uploaded the Android 11 source code on September 8, the same day they rolled out the stable update to Pixel phones. Breaking with tradition, Google is releasing the Android 12 source code before rolling out the stable update to supported Pixel phones. The stable update is planned to roll out to Pixels in a few weeks, but no date has been set.
Google is releasing the Android 12 source code under the Apache License version 2.0. Apache 2.0 is a permissive rather than copyleft license, meaning developers can modify and distribute the code freely without being required to open-source their modifications. This licensing system is what allows smartphone makers to develop their own closed-source forks of Android.
Developers that wish to follow open-source development principles can choose to fork AOSP and release the source code for their modifications, a key principle behind the collaborative developments that take place on the XDA Forums. The release of the Android 12 source code will play a fundamental role in the development of new and updated aftermarket distributions, such as LineageOS and other popular “custom ROMs“.
If you’re interested in analyzing the Android 12 source code, you can head over to the Android Git repositories and look for the new Android 12 branches and tags. Specifically, look for the “android-12.0.0_r#” tags. It takes a while for the entirety of Google’s internal codebase to be pushed to the public AOSP repos, so expect to wait a few hours before you can sync everything. Google also uploads the commit history for each release, which provides a lot of insight into the Android team’s thought process when adding or removing features.
Although development in the AOSP master branch has already shifted towards the next major version of Android — Android 13 — Google will continue to make small changes, mainly backports and security patch mergers, to the Android 12 codebase, so keep an eye out for new tags each month. We’ve seen evidence that Google is working on a point release that seems to include many improvements for foldables and tablets, but those features have not been open-sourced with today’s release. In addition, one of Android 12’s marquee features — its wallpaper-based theming system — hasn’t been fully open sourced yet, but that’s set to change with the aforementioned point release.