Halaman ini membahas cara menyiapkan pengembangan dengan Android 8.0 atau versi yang lebih rendah. Untuk mempelajari cara membangun Android 9.0 dan yang lebih tinggi, lihat Menyiapkan pengembangan AOSP.
Menyiapkan pengembangan AOSP (5.0 - 8.0)
Untuk Android 5.0 hingga 8.0, pertimbangkan untuk menggunakan Dockerfile untuk memudahkan instalasi semua paket yang diperlukan.
Sistem operasi
Android biasanya dibangun dengan GNU Linux. Dimungkinkan juga untuk membangun Android di mesin virtual pada sistem yang tidak didukung seperti Mac OS X.
Google merekomendasikan untuk membangun di GNU Linux. Sistem build Android biasanya menjalankan ART pada mesin build untuk melakukan prakompilasi file DEX sistem. ART hanya dapat berjalan di di Linux, jadi sistem build melewati langkah prakompilasi ini pada sistem operasi, yang mengakibatkan versi Android dengan kinerja yang lebih rendah.
GNU Linux
- Android 6.0 - Android 8.0: Ubuntu 14.04 (Trusty)
- Android 5.x: Ubuntu 12.0
Mac OS X (Intel/x86)
- Android 6.0 - AOSP 8.0: Mac OS X v10.10 (Yosemite) atau nanti dengan Xcode 4.5.2 dan Alat Command Line
- Android 5.x: Mac OS X v10.8 (Mountain Lion) dengan Xcode 4.5.2 dan Alat Command Line
JDK
Android 7.0 - Android 8.0:
- Ubuntu: OpenJDK 8
- Mac OS X: JDK 8u45 atau yang lebih baru
Android 5.x (Lollipop) - Android 6.0 (Marshmallow):
- Ubuntu: OpenJDK 7
- Mac OS X: jdk-7u71-macosx-x64.dmg
Menyiapkan pengembangan AOSP (2.3 - 4.4)
Bagian ini memberikan beberapa panduan tentang cara menyiapkan Android 2.3 hingga Android 4.4
Sistem operasi
Android biasanya dibangun dengan GNU Linux. Anda juga bisa membangun Android mesin virtual pada sistem yang tidak didukung seperti Windows.
Google merekomendasikan untuk membangun di GNU Linux. Sistem build Android biasanya menjalankan ART pada mesin build untuk melakukan prakompilasi file DEX sistem. ART hanya dapat berjalan di di Linux, jadi sistem build melewati langkah prakompilasi ini pada sistem operasi, yang mengakibatkan versi Android dengan kinerja yang lebih rendah.
GNU Linux
- Android 2.3.x - Android 4.4: Ubuntu 12.04 (Presisi)
Mac OS X (Intel/x86)
- Android 4.1.x - Android 4.4.x: Mac OS X v10.6 (Snow Leopard) atau Mac OS X v10.7 (Lion) dan Xcode 4.2 (Apple Developer Tools)
- Android 2.3 - Android 4.0.x: Mac OS X v10.5 (Leopard) atau Mac OS X v10.6 (Snow Leopard) dan SDK Mac OS X v10.5
GNU buat
Untuk Android 4.1.x hingga 4.4, gunakan GNU make (gmake) 3.82. Untuk Android 2.3 ke 4.0.x, kembalikan dari gmake 3.82 ke menghindari error build.
Xcode dan paket lainnya
Untuk Mac OS X v10.8 atau yang lebih rendah, instal Xcode dari Situs Apple Developer. Jika Anda tidak sudah terdaftar sebagai pengembang Apple, Anda harus membuat ID Apple untuk yang didownload.
Jika menggunakan Mac OS X v10.4, instal juga Bison:
POSIXLY_CORRECT=1 sudo port install bison
Untuk MacPorts, masalah:
POSIXLY_CORRECT=1 sudo port install gmake libsdl git gnupg
Untuk Homebrew, terbitkan:
brew install gmake libsdl git gnupg2
Kembali dari gmake 3.82
Pada Android 4.0.x dan versi yang lebih rendah, gmake 3.82 memiliki bug yang mencegah Android membangun. Anda dapat menginstal versi 3.81 menggunakan MacPorts dengan langkah-langkah berikut:
Edit
/opt/local/etc/macports/sources.conf
dan tambahkanfile:///Users/Shared/dports
di atas barisrsync
.Buat direktori
dports
:mkdir /Users/Shared/dports
Di direktori
dports
baru, jalankan:svn co --revision 50980 http://svn.macports.org/repository/macports/trunk/dports/devel/gmake/ devel/gmake/
Buat indeks port untuk repositori lokal baru Anda:
portindex /Users/Shared/dports
Instal versi gmake yang lebih rendah:
sudo port install gmake @3.81
JDK
- Android 2.3.x - Android 4.4.x:
- Ubuntu: Java JDK 6
- Mac OS X: Java JDK 6
JDK untuk Linux
Tujuan
Project Open Source Android (AOSP)
dilengkapi dengan versi bawaan OpenJDK dalam prebuilts/jdk/
, jadi
penginstalan tambahan diperlukan.
Versi Android sebelumnya memerlukan penginstalan JDK terpisah. Aktif Ubuntu, gunakan OpenJDK
Untuk Ubuntu 15.04 dan yang lebih tinggi
Jalankan perintah berikut:
sudo apt-get update
sudo apt-get install openjdk-8-jdk
Untuk Ubuntu LTS 14.04
Tidak ada paket OpenJDK 8 yang didukung untuk Ubuntu 14.04. Tujuan Paket Ubuntu 15.04 OpenJDK 8 telah berhasil digunakan dengan Ubuntu 14.04. Versi paket yang lebih tinggi (misalnya untuk 15.10, 16.04) tidak berfungsi di 14.04 menggunakan petunjuk berikut.
Download paket
.deb
untuk arsitektur 64-bit dari old-releases.ubuntu.comopenjdk-8-jre-headless_8u45-b14-1_amd64.deb
dengan SHA2560f5aba8db39088283b51e00054813063173a4d8809f70033976f83e214ab56c0
openjdk-8-jre_8u45-b14-1_amd64.deb
dengan SHA2569ef76c4562d39432b69baf6c18f199707c5c56a5b4566847df908b7d74e15849
openjdk-8-jdk_8u45-b14-1_amd64.deb
dengan SHA2566e47215cf6205aa829e6a0a64985075bd29d1f428a4006a80c9db371c2fc3c4c
Secara opsional, konfirmasikan {i>checksum<i} file yang diunduh terhadap String SHA256 dicantumkan dengan setiap paket dari langkah 1. Misalnya, dengan Alat
sha256sum
:sha256sum {downloaded.deb file}
Instal paket:
sudo apt-get update
Jalankan
dpkg
untuk setiap file.deb
yang telah Anda download. Mungkin menghasilkan error karena dependensi yang tidak ada:sudo dpkg -i {downloaded.deb file}
Untuk memperbaiki dependensi yang tidak ada:
sudo apt-get -f install
(Opsional) Update versi Java default
Secara opsional, untuk versi Ubuntu yang disebutkan sebelumnya, perbarui Versi Java dengan menjalankan:
sudo update-alternatives --config java
sudo update-alternatives --config javac
Instal paket yang diperlukan untuk Ubuntu 14.04
Jalankan perintah berikut untuk menginstal paket yang diperlukan untuk Ubuntu 14.04:
$ sudo apt-get install git-core gnupg flex bison gperf build-essential zip curl zlib1g-dev libc6-dev-i386 libncurses5 lib32ncurses5-dev x11proto-core-dev libx11-dev lib32z-dev libgl1-mesa-dev libxml2-utils xsltproc unzip$
Instal paket yang diperlukan untuk Ubuntu 12.04
Jalankan perintah berikut untuk menginstal paket yang diperlukan untuk Ubuntu 12.04:
$ sudo apt-get install git gnupg flex bison gperf build-essential zip curl libc6-dev libncurses5-dev:i386 x11proto-core-dev libx11-dev:i386 libreadline6-dev:i386 libgl1-mesa-glx:i386 libgl1-mesa-dev mingw32 tofrodos python-markdown libxml2-utils xsltproc zlib1g-dev:i386
sudo ln -s /usr/lib/i386-linux-gnu/mesa/libGL.so.1 /usr/lib/i386-linux-gnu/libGL.so