Поддержка старых версий

Сборка последних старых релизов (>= 5.0 Lollipop)

Для версий Android 8.0 (Oreo или O) — 5.0 (Lollipop или L) рассмотрите возможность использования включенного Dockerfile , чтобы упростить установку всех необходимых пакетов.

Сборка действительно старых релизов (<= 4.4 KitKat)

Операционные системы

Android обычно создается с помощью GNU/Linux. Также можно собрать Android на виртуальной машине в неподдерживаемых системах, таких как Windows.

Мы рекомендуем использовать GNU/Linux. Система сборки Android обычно запускает ART на машине сборки для предварительной компиляции системных файлов DEX. ART может работать только в Linux, поэтому система сборки пропускает этот этап предварительной компиляции в операционных системах, отличных от Linux, что приводит к снижению производительности сборки Android.

ГНУ/Линукс

  • Android 6.0 (Marshmallow) — основной AOSP: Ubuntu 14.04 (Trusty)
  • Android 2.3.x (Gingerbread) – Android 5.x (Lollipop): Ubuntu 12.04 (Precise)
  • Android 1.5 (Cupcake) — Android 2.2.x (Froyo): Ubuntu 10.04 (Lucid)

Mac OS X (Intel/x86)

  • Android 6.0 (Marshmallow) — основной AOSP: Mac OS X v10.10 (Yosemite) или выше с Xcode 4.5.2 и инструментами командной строки
  • Android 5.x (Lollipop): Mac OS X v10.8 (Mountain Lion) с Xcode 4.5.2 и инструментами командной строки
  • Android 4.1.x (Jelly Bean) — Android 4.4.x (KitKat): Mac OS X v10.6 (Snow Leopard) или Mac OS X v10.7 (Lion) и Xcode 4.2 (Apple Developer Tools)
  • Android 1.5 (Cupcake) — Android 4.0.x (Ice Cream Sandwich): Mac OS X v10.5 (Leopard) или Mac OS X v10.6 (Snow Leopard) и Mac OS X v10.5 SDK

GNU сделать

Для версий ниже основной ветки AOSP до Android 4.1.x (Jelly Bean) используйте GNU make (gmake) 3.82 . Для Android 4.0.x (Ice Cream Sandwich) и более ранних версий откатитесь от gmake 3.82 , чтобы избежать ошибок сборки.

Xcode и другие пакеты

Для более ранних версий Mac OS X v10.8 или ниже установите Xcode с сайта разработчиков Apple . Если вы еще не зарегистрированы в качестве разработчика Apple, для загрузки необходимо создать Apple ID.

Если вы используете Mac OS X v10.4, также установите Bison:

    POSIXLY_CORRECT=1 sudo port install bison

Для MacPorts выполните:

    POSIXLY_CORRECT=1 sudo port install gmake libsdl git gnupg

Для доморощенного выпуска:

    brew install gmake libsdl git gnupg2

Возврат с gmake 3.82

В Android 4.0.x (Ice Cream Sandwich) и более ранних версиях gmake 3.82 есть ошибка, которая препятствует сборке Android. Вы можете установить версию 3.81 с помощью MacPorts, выполнив следующие действия:

  1. Отредактируйте /opt/local/etc/macports/sources.conf и добавьте эту строку:
        file:///Users/Shared/dports
    над строкой rsync. Затем создайте этот каталог:
        mkdir /Users/Shared/dports
  2. В новом каталоге dports запустите:
        svn co --revision 50980 http://svn.macports.org/repository/macports/trunk/dports/devel/gmake/ devel/gmake/
  3. Создайте индекс порта для вашего нового локального репозитория:
        portindex /Users/Shared/dports
  4. Установите старую версию gmake:
        sudo port install gmake @3.81

JDK

Поддерживаемые версии

JDK для Linux

main ветвь Android в проекте с открытым исходным кодом Android (AOSP) поставляется с готовыми версиями OpenJDK ниже prebuilts/jdk/ поэтому дополнительная установка не требуется.

Более низкие версии Android требуют отдельной установки JDK. В Ubuntu используйте OpenJDK .

Для Ubuntu 15.04 и выше

Запустите следующее:

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

Для Ubuntu LTS 14.04

Нет доступных поддерживаемых пакетов OpenJDK 8 для Ubuntu 14.04. Пакеты Ubuntu 15.04 OpenJDK 8 успешно использовались с Ubuntu 14.04. Более высокие версии пакетов (например, для 15.10, 16.04) не работают на 14.04, следуя приведенным ниже инструкциям.

  1. Загрузите пакеты .deb для 64-битной архитектуры с сайта old-releases.ubuntu.com :
    • openjdk-8-jre-безголовый_8u45-b14-1_amd64.deb
      с SHA256 0f5aba8db39088283b51e00054813063173a4d8809f70033976f83e214ab56c0
    • openjdk-8-jre_8u45-b14-1_amd64.deb
      с SHA256 9ef76c4562d39432b69baf6c18f199707c5c56a5b4566847df908b7d74e15849
    • openjdk-8-jdk_8u45-b14-1_amd64.deb
      с SHA256 6e47215cf6205aa829e6a0a64985075bd29d1f428a4006a80c9db371c2fc3c4c
  2. При необходимости проверьте контрольные суммы загруженных файлов по строке SHA256, указанной для каждого пакета выше. Например, с помощью инструмента sha256sum :
        sha256sum {downloaded.deb file}
  3. Установите пакеты:
        sudo apt-get update
    Запустите dpkg для каждого загруженного файла .deb . Это может привести к ошибкам из-за отсутствующих зависимостей:
        sudo dpkg -i {downloaded.deb file}
    Чтобы исправить отсутствующие зависимости:
        sudo apt-get -f install

(Необязательно) Обновите версию Java по умолчанию.

При необходимости для версий Ubuntu, указанных выше, обновите версию Java по умолчанию, выполнив:

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