Android adalah sistem operasi untuk berbagai perangkat dengan berbagai {i>form factor<i} (faktor bentuk). Dokumentasi dan kode sumber Android tersedia untuk siapa pun 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 pusat kegagalan, di mana satu pemain industri membatasi atau mengontrol inovasi dari pihak lain. Oleh karena itu, AOSP adalah produk developer berkualitas produksi yang lengkap dengan kode sumber yang terbuka untuk penyesuaian dan porting.
Bagian dokumentasi ini membantu developer AOSP baru untuk memulai dengan dan untuk melakukan tugas pengembangan penting.
Persyaratan yang diperlukan
Berikut ini adalah daftar istilah dan definisi yang digunakan dalam program Getting Dokumentasi dimulai. 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: pihak pertama (1p) dan developer aplikasi developer aplikasi pihak ketiga (3p).
- Developer aplikasi pihak pertama Android
- Developer aplikasi Android yang memiliki akses ke AOSP System API dan penulisan aplikasi produsen perangkat dan hak istimewa.
- Developer aplikasi pihak ketiga Android
- Developer aplikasi Android yang hanya menggunakan SDK publik Android untuk membuat Android.
Jika Anda ingin mengembangkan aplikasi pihak ketiga untuk Android, lihat
developers.android.com
Informasi di
situs ini hanya ditujukan bagi 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 meneruskan Compatibility Test Suite (CTS). Kompatibel dengan Android perangkat memenuhi syarat untuk berpartisipasi dalam ekosistem Android yang mencakup potensi lisensi Android Play Store, potensi pemberian lisensi Rangkaian Layanan Seluler Google (GMS) aplikasi dan API, serta penggunaan merek dagang Android. Siapa saja dipersilakan untuk menggunakan kode sumber Android, tetapi dianggap sebagai bagian dari ekosistem Android, perangkat harus kompatibel dengan Android. Untuk informasi lebih lanjut tentang kompatibilitas dan CTS, lihat Ringkasan Program Kompatibilitas Android
- Compatibility Definition Document (CDD)
- Dokumen yang mencantumkan 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 tanpa afiliasi perusahaan. Setiap kontributor AOSP menggunakan alat yang sama, mengikuti proses peninjauan kode yang sama, dan memiliki gaya {i>coding<i} yang sama. Anda tidak harus menjadi kontributor untuk menggunakan AOSP; Anda dapat mendownload AOSP, memodifikasinya untuk kebutuhan Anda sendiri, dan men-deploy-nya di perangkat tanpa berkontribusi kode program untuk digunakan orang lain.
Ada batasan untuk jenis kontribusi kode yang diterima oleh Google. Misalnya, Anda mungkin ingin berkontribusi pada API aplikasi alternatif, seperti lingkungan berbasis C++ lengkap. Google akan menolak kontribusi tersebut karena Android mendorong aplikasi untuk dijalankan pada runtime ART. Demikian pula, Google tidak menerima kontribusi seperti library GPL atau LGPL yang tidak kompatibel dengan tujuan pemberian lisensi.
Jika Anda tertarik untuk menyumbangkan kode sumber, hubungi Google sebelum mulai bekerja.
- Compatibility Test Suite (CTS)
Paket pengujian gratis tingkat komersial, tersedia untuk diunduh dalam bentuk biner atau di AOSP. CTS adalah serangkaian pengujian unit yang dirancang untuk diintegrasikan ke dalam dalam alur kerja harian Anda. Tujuan CTS adalah untuk mengungkapkan inkompatibilitas, dan memastikan bahwa perangkat lunak tetap kompatibel selama proses pengembangan.
- Sotong
Perangkat virtual yang didukung Android dan dapat dikonfigurasi yang dapat berjalan dari jarak jauh, menggunakan penawaran cloud pihak ketiga, seperti Google Cloud Engine, dan secara lokal di mesin Linux x86.
- Developer
Dalam konteks AOSP, developer adalah siapa saja yang bekerja dengan AOSP dengan cara apa pun. Istilah "developer" secara umum digunakan untuk merujuk ke berbagai orang yang mungkin membaca dokumentasi ini, misalnya 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 diprainstal di perangkat.
- Target
Permutasi perangkat, seperti model atau faktor bentuk tertentu. Sebagai contoh,
aosp_cf_x86_64_phone-userdebug
mewakili 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 yang merupakan anggota asli OHA maupun lainnya—telah berinvestasi cukup besar di Android. Perusahaan-perusahaan ini telah mengalokasikan sumber daya teknis yang signifikan untuk meningkatkan Android dan menghadirkan perangkat Android waktu penyiapan produk.
Perusahaan yang telah berinvestasi di Android telah melakukannya karena mereka percaya bahwa platform terbuka diperlukan. Android secara sengaja dan eksplisit terbuka upaya sumber (bukan perangkat lunak gratis); sekelompok organisasi dengan kebutuhan bersama telah menggabungkan sumber daya untuk berkolaborasi dalam satu implementasi dari 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, Proyek Open Source Android (AOSP) mempertahankan tindakan Program Kompatibilitas Android, yang menguraikan artinya kompatibel dengan Android dan apa yang dibutuhkan pembuat perangkat untuk mencapai status tersebut. Siapa pun dapat menggunakan kode sumber Android untuk tujuan apa pun, dan Google menerima semua penggunaan yang sah. Namun, untuk ikut serta dalam ekosistem aplikasi bersama yang dibangun 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 manajemen project. Google memandang dan mengelola Android sebagai produk software tunggal dan holistik, bukan distribusi, spesifikasi, atau pengumpulan komponen yang dapat diganti. Niat Google adalah bahwa builder perangkat mem-port Android ke suatu perangkat; model tidak menerapkan spesifikasi atau menyusun distribusi.
Apa selanjutnya?
Jika Anda baru mengenal AOSP dan ingin mengikuti tutorial tentang AOSP pengembangan web, lanjutkan dengan Tutorial AOSP.
Jika Anda yakin bahwa perangkat Anda harus kompatibel dengan Android, lihat Program Kompatibilitas Android.
Jika Anda ingin mempelajari latar belakang AOSP, termasuk partisipasi Google dalam platform ini, lihat pertanyaan umum (FAQ) AOSP.