Ringkasan AOSP

Android adalah sistem operasi untuk berbagai perangkat dengan faktor bentuk yang berbeda-beda. Dokumentasi dan kode sumber untuk Android tersedia bagi siapa saja sebagai Proyek Open Source Android (AOSP). Anda dapat menggunakan AOSP untuk membuat varian kustom OS Android untuk perangkat Anda sendiri.

AOSP dirancang sedemikian rupa sehingga tidak ada titik kegagalan yang sentral, saat satu pemain industri membatasi atau mengontrol inovasi dari pelaku industri lain. Oleh karena itu, AOSP adalah produk developer lengkap yang berkualitas produksi dengan kode sumber yang terbuka untuk penyesuaian dan porting.

Bagian dokumentasi ini membantu developer AOSP baru untuk mulai menggunakan platform ini dan melakukan tugas pengembangan penting.

Persyaratan yang diperlukan

Berikut adalah daftar istilah dan definisi yang digunakan di seluruh dokumentasi memulai ini. Anda harus mempelajari setiap definisi sebelum melanjutkan lebih lanjut.

Developer aplikasi Android

Developer aplikasi Android menulis aplikasi Android atau aplikasi yang berjalan di Android. Ada dua klasifikasi developer aplikasi: developer aplikasi pihak pertama (1p) dan pihak ketiga (3p).

Developer aplikasi Android 1p
Developer aplikasi Android yang memiliki akses ke AOSP System API dan menulis aplikasi dengan hak istimewa dan produsen perangkat.
Developer aplikasi Android 3p
Developer aplikasi Android yang hanya menggunakan SDK publik Android untuk membuat aplikasi Android.

Jika ingin mengembangkan aplikasi 3p untuk Android, lihat developers.android.com. Informasi di situs ini ditujukan khusus untuk mereka yang bekerja langsung dengan AOSP.

Android debug bridge (ADB)
Alat command line (adb) yang memungkinkan workstation Anda berkomunikasi dengan perangkat virtual, diemulasikan software, atau fisik.
Perangkat yang kompatibel dengan Android
Perangkat yang dapat menjalankan aplikasi pihak ketiga yang ditulis oleh developer pihak ketiga menggunakan Android SDK dan NDK. Perangkat yang kompatibel dengan Android harus mematuhi persyaratan Compatibility Definition Document (CDD) dan lulus Compatibility Test Suite (CTS). Perangkat yang kompatibel dengan Android memenuhi syarat untuk berpartisipasi dalam ekosistem Android yang mencakup potensi lisensi Play Store Android, potensi lisensi untuk memastikan rangkaian aplikasi dan API Layanan Seluler Google (GMS), serta penggunaan merek dagang Android. Siapa pun boleh menggunakan kode sumber Android, tetapi untuk dianggap sebagai bagian dari ekosistem Android, perangkat harus kompatibel dengan Android. Untuk informasi selengkapnya tentang kompatibilitas dan CTS, lihat ringkasan Program Kompatibilitas Android
Compatibility Definition Document (CDD)
Dokumen yang menyebutkan persyaratan software dan hardware untuk perangkat yang kompatibel dengan Android.
Kontributor

Orang yang memberikan kontribusi pada kode sumber AOSP. Kontributor dapat berupa karyawan Google, karyawan dari perusahaan lain, dan individu yang tidak memiliki afiliasi perusahaan. Setiap kontributor AOSP menggunakan alat yang sama, mengikuti proses peninjauan kode yang sama, dan tunduk pada gaya coding yang sama. Anda tidak perlu menjadi kontributor untuk menggunakan AOSP. Anda dapat mendownload AOSP, mengubahnya sesuai kebutuhan, dan men-deploy-nya di perangkat tanpa memberikan kode agar dapat digunakan orang lain.

Ada batasan untuk jenis kontribusi kode yang diterima oleh Google. Misalnya, Anda mungkin ingin memberikan kontribusi API aplikasi alternatif, seperti lingkungan berbasis C++ lengkap. Google akan menolak kontribusi tersebut karena Android mendorong aplikasi agar dijalankan dalam runtime ART. Demikian pula, Google tidak menerima kontribusi seperti library GPL atau LGPL yang tidak kompatibel dengan sasaran pemberian lisensi.

Jika Anda berminat untuk menyumbangkan kode sumber, hubungi Google sebelum mulai bekerja.

Compatibility Test Suite (CTS)

Paket pengujian gratis tingkat komersial, tersedia untuk didownload sebagai biner atau sebagai sumber di AOSP. CTS adalah serangkaian pengujian unit yang dirancang untuk diintegrasikan ke alur kerja harian Anda. Tujuan CTS adalah untuk mengungkapkan inkompatibilitas, dan memastikan bahwa software tetap kompatibel selama proses pengembangan.

Sotong

Perangkat virtual Android yang dapat dikonfigurasi dan dapat dijalankan dari jarak jauh menggunakan penawaran cloud pihak ketiga, seperti Google Cloud Engine, dan secara lokal di mesin x86 Linux.

Developer

Dalam konteks AOSP, developer adalah siapa saja yang menangani AOSP dengan cara apa pun. Istilah "developer" digunakan untuk merujuk secara umum ke berbagai orang yang mungkin membaca dokumentasi ini, seperti produsen peralatan asli (OEM), produsen handset, operator, dan kreator System-on-a-Chip (SoC).

Layanan Seluler Google (GMS)

Kumpulan aplikasi dan API Google yang dapat diinstal sebelumnya di perangkat.

Target

Permutasi perangkat, seperti model atau faktor bentuk tertentu. Misalnya, aosp_cf_x86_64_phone-userdebug merepresentasikan ponsel x86 berukuran 65 MB dengan informasi proses debug yang dirancang untuk berjalan di emulator sotong.

Filosofi tata kelola

Sekelompok perusahaan yang dikenal sebagai Open Handset Alliance (OHA), yang dipimpin oleh Google, berasal dari Android. Saat ini, banyak perusahaan—baik anggota asli OHA maupun lainnya—telah berinvestasi cukup besar pada Android. Perusahaan ini telah mengalokasikan resource engineering yang signifikan untuk meningkatkan Android dan menghadirkan perangkat Android ke pasar.

Perusahaan yang telah berinvestasi di Android telah melakukannya karena mereka percaya bahwa platform terbuka diperlukan. Android sengaja dan eksplisit merupakan upaya open source (bukan software gratis); sekelompok organisasi dengan kebutuhan bersama telah menggabungkan resource untuk berkolaborasi dalam satu implementasi produk bersama. Pertama dan terpenting, filosofi Android bersifat pragmatis. Tujuan adalah produk bersama yang dapat disesuaikan dan disesuaikan oleh setiap kontributor.

Tentu saja, penyesuaian yang tidak terkontrol dapat menyebabkan implementasi yang tidak kompatibel. Untuk mencegah inkompatibilitas, Project Open Source Android (AOSP) mengelola program Kompatibilitas Android, yang menjelaskan definisi kompatibel dengan Android dan apa yang diperlukan builder perangkat untuk mencapai status tersebut. Siapa pun dapat menggunakan kode sumber Android untuk tujuan apa pun, dan Google menyambut semua penggunaan yang sah. Namun, untuk mengambil bagian dalam ekosistem bersama aplikasi yang di-build oleh anggota OHA di Android, pembuat perangkat harus berpartisipasi dalam program Kompatibilitas Android.

AOSP dipimpin oleh Google, yang memelihara dan mengembangkan Android lebih jauh. Meskipun Android terdiri dari beberapa subproject, AOSP sepenuhnya merupakan pengelolaan project. Google memandang dan mengelola Android sebagai produk software tunggal dan holistik, bukan sebagai distribusi, spesifikasi, atau kumpulan bagian yang dapat diganti. Tujuan Google adalah bahwa builder perangkat port Android ke perangkat; mereka tidak menerapkan spesifikasi atau menyeleksi distribusi.

Apa selanjutnya?