Welcome to the Android Open Source Project!

Android is an open source software stack for a wide range of mobile devices and a corresponding open source project led by Google. This site offers the information and source code you need to create custom variants of the Android stack, port devices and accessories to the Android platform, and ensure your devices meet compatibility requirements.

What's New

AddressSanitizer and Native Debugging Instructions

The AddressSanitizer tool for detecting memory bugs in native Android code is documented for the first time in a dedicated page. Similarly, the main Debugging page now contains instructions for debuggerd, GDB, and Valgrind.

Dedicated Debugging and Configuration sections

The former Debugging and Tuning section has been split into separate Debugging and Configuration sections to better differentiate between setup and testing steps with the previous Performance Tuning renamed OpenGLRenderer.

Selectively Disabling Pre-optimization in ART

Configuring ART now explains how to selectively disable pre-optimization of a particular module or package and provides an example for doing so.

USB Access Rules File Improvements

The contents of the 51-android.rules file needed to configure USB access has been moved from being inline on Establishing a Build Environment to being a downloadable file accompanied by an example command to update it programmatically.

Google Feedback Integration

Now every source.android.com page contains a prominent Send Feedback button in the footer so partners and the open source community may directly convey their desired improvements to this site.

Source and Devices tab Improvements

The Download and Building section of the Source tab has been reorganized to match expected development workflow. Adding a New Device has been introduced to explain how Android Makefiles are produced. Using Repo now contains an example for obtaining command-specific help. And the Devices main page now describes the standard hardware abstraction layer (HAL) structure.

Getting Started

Explore the Source

Get the complete Android platform and modify and build it to suit your needs. You can also contribute to the Android Open Source Project (AOSP) repository to make your changes available to everyone else in the Android ecosystem.

Android framework summary

Port Android to Devices

Port the latest Android platform and create compelling devices that your customers want.

Build Accessories

Sometimes, a device can't do it all. Tap into Android's open accessory standard and build accessories to complement the wide variety of Android-powered devices.

Get Compatible

Being Android-compatible lets you offer custom features but still give users and developers a consistent and standard experience across all Android-powered devices. Android provides guidance and a test suite to verify your Android compatibility.

Help this Site

Use the Send Feedback button at the bottom of any page to request improvements to the content or identify errors. In addition, source.android.com is maintained in the Android Open Source Project. See the docs/source.android.com project log in AOSP for the complete list of changes to this site. Contribute your own updates to that same project and help maintain source.android.com.