OS: AOSP - Persiapan Pembuatan ROM

From OnnoWiki
Jump to navigation Jump to search

Beberapa Distribusi Android

Sebetulnya ada lumayan banyak distribusi sistem operasi android. Yang resmi dari Google adalah,

AOSP – Android Open Source Project https://source.android.com/

Beberapa distribusi lain, yang non-Google ada banyak sekali, beberapa diantaranya adalah,

AOKP - Android Open Kang Project http://aokp.co/source/
lineageos - http://lineageos.org/
PAC-ROM - http://www.pac-rom.com/#Home
Paranoid Android - http://paranoidandroid.co/
SlimROMs - http://www.slimroms.net/

Untuk lebih jelasnya bisa di baca2 di https://www.androidpit.com/best-custom-roms-for-android dan https://forum.xda-developers.com/android/general/custom-rom-comparison-database-t3031005#post58850951

Selanjutnya mari kita membahas bagaimana cara membuat ROM android sendiri menggunakan source code yang disediakan oleh Google tepatnya Android Open Source Project (AOSP). Secara default memang kebanyakan yang pasti bisa di compile adalah untuk smartphone Nexus yang di keluarkan oleh Google. Akan tetapi beberapa Vendor seperti LG, Samsung membuka source code Android-nya dan bisa di ambil secara bebas via Internet, misalnya melalui,

http://opensource.lge.com/index
http://opensource.samsung.com/reception.do

Biasanya yang tidak terlalu rewel adalah smartphone dengan processor qualcomm. Smartphone murah kebanyakan menggunakan processor MediaTek (MTK) dari cina, ini biasanya susah memperoleh driver proprietary-nya. Akibatnya kita akan kesulitan untuk mengcompile sistem operasi Android untuk smartphone MTK. Sayang smartphone qualcomm biasanya mahal, yah mungkin kita bisa tertolong dengan beli second smartphone tersebut, terutama Nexus.

Bagi anda yang ingin memonitoring pergerakan mereka yang “ngoprek” sistem operasi android atau ROM android, dapat di baca2 di situs XDA developers http://fourm.xda-developers.com

Persiapan Membuat ROM

Sebelum kita mendownload dan membuat Android dari source code, pastikan bahwa system yang kita gunakan memenuhi persyaratan berikut.

Kebutuhan Hardware

Komputer yang kita gunakan minimal harus memenuhi persyaratan berikut,

  • Untuk Gingerbread (2.3.x) ke atas, kita membutuhkan sistem 64 bit.
  • Palin tidak 100 Gbyte untuk checkout, 150 GB untuk sebuah build, 200GB atau lebih untuk banyak build. Jika kita menggunakan ccache, maka kita akan membutuhkan space yang lebih banyak lagi.

Jika kita menjalankan Linux di mesin virtual, kita akan membutuhkan paling tidak 16 GB RAM / swap. Sekedar catatan, penulis memperoleh error “Out of Memory” dan gagal mengcompile Android versi terbaru 7.1.1 di mesin dengan RAM 2GB swap 16GB.

Kebutuhan Software

Master branch dari Android Open Source Project (AOSP) biasanya di developed dan di test pada release Ubuntu Long Term Support (LTS). Berikut adalah daftar sistem operasi yang digunakan untuk build AOSP.

Sistem Operasi

Android biasanya di built dengan sistem operasi GNU/Linux atau Mac OS.

GNU/Linux

  • Android 6.0 (Marshmallow) - AOSP master: 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 (Intel/x86)

  • Android 6.0 (Marshmallow) - AOSP master: Mac OS v10.10 (Yosemite) atau yang lebih baru dengan Xcode 4.5.2 dan Command Line Tools
  • Android 5.x (Lollipop): Mac OS v10.8 (Mountain Lion) dengan Xcode 4.5.2 dan Command Line Tools
  • Android 4.1.x-4.3.x (Jelly Bean) - Android 4.4.x (KitKat): Mac OS v10.6 (Snow Leopard) atau Mac OS X v10.7 (Lion) dan Xcode 4.2 (Apple's Developer Tools)
  • Android 1.5 (Cupcake) - Android 4.0.x (Ice Cream Sandwich): Mac OS v10.5 (Leopard) atau Mac OS X v10.6 (Snow Leopard) dan the Mac OS X v10.5 SDK

Java Development Kit (JDK)

  • master branch dari Android di AOSP: Ubuntu - OpenJDK 8, Mac OS - jdk 8u45 atau yang lebih baru.
  • Android 5.x (Lollipop) - Android 6.0 (Marshmallow): Ubuntu - OpenJDK 7, Mac OS - jdk-7u71-macosx-x64.dmg
  • Android 2.3.x (Gingerbread) - Android 4.4.x (KitKat): Ubuntu - Java JDK 6, Mac OS - Java JDK 6
  • Android 1.5 (Cupcake) - Android 2.2.x (Froyo): Ubuntu - Java JDK 5

Paket program yang penting

  • Python 2.6 -- 2.7 dari python.org
  • GNU Make 3.81 -- 3.82 dari gnu.org; Android 3.2.x (Honeycomb) dan yang lebih lama perlu mundur dari make 3.82 untuk mengatasi error saat build.
  • Git 1.7 atau yang lebih baru dari git-scm.com.

Binary untuk Nexus & Pixel

Untuk mereka yang menggunakan Nexus & Pixel dapat mendownload preview, factory image, drivers, dan update over-the-air (OTA).