Einrichten für die AOSP-Entwicklung (1.5 - 8.0)

In diesem Dokument wird erläutert, wie Sie die Entwicklung mit Android 8.0 oder früheren Versionen einrichten. Informationen zum Erstellen von Android 9.0 und höher finden Sie unter Einrichten für die AOSP-Entwicklung .

Einrichten für die AOSP-Entwicklung (5.0 – 8.0)

Erwägen Sie für Android 5.0 bis 8.0 die Verwendung der mitgelieferten Docker-Datei , um die Installation aller erforderlichen Pakete zu vereinfachen.

Betriebssysteme

Android wird normalerweise mit GNU Linux erstellt. Es ist auch möglich, Android in einer virtuellen Maschine auf nicht unterstützten Systemen wie Mac OS X zu erstellen.

Google empfiehlt den Aufbau auf GNU Linux. Das Android-Build-System führt normalerweise ART auf dem Build-Computer aus, um System-DEX-Dateien vorzukompilieren. ART kann nur unter Linux ausgeführt werden, daher überspringt das Build-System diesen Vorkompilierungsschritt auf Nicht-Linux-Betriebssystemen, was zu einem Android-Build mit reduzierter Leistung führt.

GNU Linux

  • Android 5.x (Lollipop): Ubuntu 12.0
  • Android 6.0 (Marshmallow) – AOSP 8.0 (Oreo): Ubuntu 14.04 (vertrauenswürdig)

Mac OS X (Intel/x86)

  • Android 6.0 (Marshmallow) – AOSP 8.0 (Oreo): Mac OS X v10.10 (Yosemite) oder höher mit Xcode 4.5.2 und Befehlszeilentools
  • Android 5.x (Lollipop): Mac OS X v10.8 (Mountain Lion) mit Xcode 4.5.2 und Befehlszeilentools

JDK

Eingerichtet für die AOSP-Entwicklung (1.5–4.4)

Dieser Abschnitt enthält einige Anleitungen zum Einrichten von Android 1.5 bis Android 4.4.

Betriebssysteme

Android wird normalerweise mit GNU Linux erstellt. Es ist auch möglich, Android in einer virtuellen Maschine auf nicht unterstützten Systemen wie Windows zu erstellen.

Google empfiehlt den Aufbau auf GNU Linux. Das Android-Build-System führt normalerweise ART auf dem Build-Computer aus, um System-DEX-Dateien vorzukompilieren. ART kann nur unter Linux ausgeführt werden, daher überspringt das Build-System diesen Vorkompilierungsschritt auf Nicht-Linux-Betriebssystemen, was zu einem Android-Build mit reduzierter Leistung führt.

GNU Linux

  • Android 2.3.x (Gingerbread) – Android 4.4 (KitKat): Ubuntu 12.0 (Precise)
  • Android 1.5 (Cupcake) - Android 2.2.x (Froyo): Ubuntu 10.04 (Lucid)

Mac OS X (Intel/x86)

  • Android 4.1.x (Jelly Bean) – Android 4.4.x (KitKat): Mac OS X v10.6 (Snow Leopard) oder Mac OS X v10.7 (Lion) und Xcode 4.2 (Apple Developer Tools)
  • Android 1.5 (Cupcake) – Android 4.0.x (Ice Cream Sandwich): Mac OS X v10.5 (Leopard) oder Mac OS X v10.6 (Snow Leopard) und das Mac OS X v10.5 SDK

GNU machen

Für Versionen vor dem AOSP-Hauptzweig bis Android 4.1.x (Jelly Bean) verwenden Sie GNU make (gmake) 3.82 . Kehren Sie für Android 4.0.x (Ice Cream Sandwich) und niedriger von gmake 3.82 zurück , um Buildfehler zu vermeiden.

Xcode und andere Pakete

Installieren Sie für Mac OS X v10.8 oder niedriger Xcode von der Apple-Entwicklerseite . Wenn Sie noch nicht als Apple-Entwickler registriert sind, müssen Sie zum Herunterladen eine Apple-ID erstellen.

Wenn Sie Mac OS X v10.4 verwenden, installieren Sie auch Bison:

POSIXLY_CORRECT=1 sudo port install bison

Geben Sie für MacPorts Folgendes ein:

POSIXLY_CORRECT=1 sudo port install gmake libsdl git gnupg

Geben Sie für Homebrew Folgendes ein:

brew install gmake libsdl git gnupg2

Zurückkehren von gmake 3.82

In Android 4.0.x (Ice Cream Sandwich) und niedriger weist gmake 3.82 einen Fehler auf, der die Erstellung von Android verhindert. Mit den folgenden Schritten können Sie Version 3.81 mit MacPorts installieren:

  1. Bearbeiten Sie /opt/local/etc/macports/sources.conf und fügen Sie file:///Users/Shared/dports über der rsync Zeile hinzu.

  2. Erstellen Sie das dports Verzeichnis:

    mkdir /Users/Shared/dports
    
  3. Führen Sie im neuen dports Verzeichnis Folgendes aus:

    svn co --revision 50980 http://svn.macports.org/repository/macports/trunk/dports/devel/gmake/ devel/gmake/
    
  4. Erstellen Sie einen Portindex für Ihr neues lokales Repository:

    portindex /Users/Shared/dports
    
  5. Installieren Sie die niedrigere Version von gmake:

    sudo port install gmake @3.81
    

JDK

  • Android 2.3.x (Gingerbread) - Android 4.4.x (KitKat):

  • Android 1.5 (Cupcake) - Android 2.2.x (Froyo):

JDK für Linux

Das Android Open Source Project (AOSP) enthält vorgefertigte Versionen von OpenJDK unter prebuilts/jdk/ sodass keine zusätzliche Installation erforderlich ist.

Frühere Android-Versionen erfordern eine separate Installation des JDK. Verwenden Sie unter Ubuntu OpenJD

Für Ubuntu 15.04 und höher

Führen Sie Folgendes aus:

sudo apt-get update
sudo apt-get install openjdk-8-jdk

Für Ubuntu LTS 14.04

Es sind keine unterstützten OpenJDK 8-Pakete für Ubuntu 14.04 verfügbar. Die Ubuntu 15.04 OpenJDK 8- Pakete wurden erfolgreich mit Ubuntu 14.04 verwendet. Höhere Paketversionen (z. B. die für 15.10, 16.04) funktionieren unter 14.04 nicht, wenn Sie die folgenden Anweisungen befolgen.

  1. Laden Sie die .deb Pakete für die 64-Bit-Architektur von old-releases.ubuntu.com herunter

    • openjdk-8-jre-headless_8u45-b14-1_amd64.deb mit SHA256 0f5aba8db39088283b51e00054813063173a4d8809f70033976f83e214ab56c0
    • openjdk-8-jre_8u45-b14-1_amd64.deb mit SHA256 9ef76c4562d39432b69baf6c18f199707c5c56a5b4566847df908b7d74e15849
    • openjdk-8-jdk_8u45-b14-1_amd64.deb mit SHA256 6e47215cf6205aa829e6a0a64985075bd29d1f428a4006a80c9db371c2fc3c4c
  2. Bestätigen Sie optional die Prüfsummen der heruntergeladenen Dateien anhand der SHA256-Zeichenfolge, die bei jedem oben aufgeführten Paket aufgeführt ist. Zum Beispiel mit dem Tool sha256sum :

    sha256sum {downloaded.deb file}
    
  3. Installieren Sie die Pakete:

    sudo apt-get update
    
  4. Führen Sie dpkg für jede heruntergeladene .deb Datei aus. Aufgrund fehlender Abhängigkeiten kann es zu Fehlern kommen:

    sudo dpkg -i {downloaded.deb file}
    
  5. So beheben Sie fehlende Abhängigkeiten:

    sudo apt-get -f install
    

(Optional) Aktualisieren Sie die Standard-Java-Version

Optional können Sie für die zuvor genannten Ubuntu-Versionen die Standard-Java-Version aktualisieren, indem Sie Folgendes ausführen:

sudo update-alternatives --config java
sudo update-alternatives --config javac