Arsitektur Android terdiri dari beberapa lapisan (layer) komponen yang saling bekerja sama untuk mendukung kebutuhan berbagai perangkat Android. Sistem Android dibangun di atas kernel Linux open-source, serta dilengkapi dengan berbagai library C/C++ yang diakses melalui application framework.
Di dalam arsitektur ini, Linux Kernel berperan sebagai inti sistem operasi (mengatur hardware, memori, proses, dll), sedangkan Android Runtime (termasuk Dalvik Virtual Machine/DVM atau ART) menyediakan lingkungan untuk menjalankan aplikasi Android.
1. Applications (Aplikasi)
Lapisan paling atas adalah aplikasi yang langsung digunakan oleh pengguna.
Contohnya:
- Aplikasi bawaan (Contacts, SMS, Camera)
- Aplikasi pihak ketiga (WhatsApp, Instagram, dll)
Aplikasi ini dibangun menggunakan bahasa seperti Java atau Kotlin dan berjalan di atas Android Runtime.
2. Application Framework
Lapisan ini menyediakan berbagai layanan (services) yang dapat digunakan oleh aplikasi.
Beberapa komponen penting:
- Activity Manager → mengatur siklus hidup aplikasi
- Window Manager → mengatur tampilan layar
- Content Provider → berbagi data antar aplikasi
- Resource Manager → mengelola resource (layout, string, dll)
Framework ini memudahkan developer karena tidak perlu mengakses hardware secara langsung.
3. Android Runtime
Lapisan ini bertanggung jawab untuk menjalankan aplikasi Android.
Terdiri dari:
- Core Libraries → menyediakan fungsi dasar seperti struktur data, utilitas, dll
- Dalvik Virtual Machine (DVM) atau ART (Android Runtime) → menjalankan bytecode aplikasi Android
Setiap aplikasi berjalan dalam proses terpisah untuk keamanan dan stabilitas.
4. Platform Libraries (Native Libraries)
Berisi kumpulan library berbasis C/C++ yang digunakan oleh berbagai komponen Android.
Contohnya:
- SQLite → database
- WebKit → engine browser
- OpenGL → grafis
- Media Framework → audio & video
Library ini memberikan performa tinggi untuk fungsi-fungsi penting.
- Metadata aplikasi
- Konfigurasi perangkat keras (hardware)
- Kebutuhan platform (versi Android)
- Library eksternal yang digunakan
- Izin (permissions) yang diperlukan aplikasi
5. Linux Kernel
Lapisan paling bawah yang menjadi inti dari sistem operasi Android.
Fungsinya:
- Manajemen memori
- Manajemen proses
- Driver perangkat (kamera, audio, display, dll)
- Keamanan sistem
Kernel Linux memastikan komunikasi antara hardware dan software berjalan dengan baik.
Adapun komponen utama dalam sebuah aplikasi Android adalah sebagai berikut:

