AOSP-Code durchläuft verschiedene Branches, bevor er in einer offiziellen Version kombiniert wird. Abbildung 1 zeigt die verschiedenen Schritte dieses Release-Lebenszyklus:
Abbildung 1: AOSP-Release-Lebenszyklus
Die Schritte im Lebenszyklus sind:
Externe Mitwirkende können den neuesten Release-Branch für ihr Gerät herunterladen und ändern sowie Codeänderungen für die nächste Version von AOSP in diesem Branch vorschlagen.
Informationen zum Lebenszyklus von Upstream-Projekten finden Sie unter Lebenszyklus von Upstream-Projekten.
Google prüft die vorgeschlagenen Änderungen im neuesten Release-Branch und nimmt sie bei Annahme in den internen Entwicklungs-Branch von Google auf. Dieser Branch ist nur innerhalb von Google zugänglich und dort fügt Google neue Funktionen für die nächste Version hinzu.
In regelmäßigen Abständen wird aus dem internen Entwicklungs-Branch ein interner Release-Branch erstellt. Google kann Änderungen in diesen Release-Branch einfügen, um Fehler zu beheben und die Leistung zu verbessern .
Irgendwann sendet Google Code aus dem internen Release-Branch an den neuesten Release-Branch (im
android-latest-release
-Manifest angegeben), um eine schreibgeschützte Kopie eines Release-Branches auf dem öffentlichen AOSP-Host zu erstellen.
Vorgelagerter Projektlebenszyklus
Der Code des Upstream-Projekts fließt in den internen Entwicklungszweig und durchläuft die Schritte 3 und 4 im vorherigen Diagramm. Der Upstream-Code wird im nächsten Release-Branch veröffentlicht. Ein Upstream-Projekt ist ein Open-Source-Projekt, aus dem das AOSP Code abruft. Neben Projekten wie dem Linux-Kernel und WebKit migriert Google einige semi-autonome Android-Projekte wie ART, die Android SDK-Tools und Bionic zu AOSP. Sie können direkt zu einigen Upstream-Projekten beitragen. Weitere Informationen finden Sie unter Zu einem Upstream-Projekt beitragen.