Mengenal Komponen Arsitektur Android

Sebelum melanjutkan tutorial pemrograman kita sebaiknya lebih dahulu Mengenal Komponen Arsitektur Android itu sendiri seperti apa. Dapat dilihat di gambar 1 bahwa saat ini komponen yang tersedia pada Android adalah System Apps, Java API Framework, Native C/C++ Libraries, Android Runtime (Dulu Android berjalan menggunakan Dalvik Virtual Machine dan sekarang untuk Android versi 5.0 otomatis berjalan menggunakan ART(Android Runtime)), Hardware Abstraction Layer (HAL), Linux Kernel.

Android Studio Tutorial Android Belajar Android Komponen Arsitektur Android
Gambar 1. Komponen Arsitektur Android

Lalu apasih itu semua? Nah untuk kali ini kita akan bahas apa sih komponen-komponen itu dan untuk apa.

  • System Apps

System Apps sendiri adalah aplikasi Default yang sudah ada pada sistem operasi Android kita. Aplikasi ini biasanya adalah Dialer yang biasa kita gunakan untuk menelfon, SMS yang kita gunakan untuk mengirim pesan teks, Mail untuk mengirim dan menerima E-mail. Aplikasi ini biasanya tidak bisa di uninstal tanpa aplikasi bantuan dan setiap System Apps akan berbeda tergantung vendor yang memunculkannya.

  • Java API Framework

Java API Framework adalah kumpulan Library pada Java yang digunakan untuk mengembangkan aplikasi Android. dalam Java API Framework terdapat 3 komponen utama yaitu Content Providers, View System, dan Managers. Pada Managers sendiri memiliki sub komponen sendiri yaitu Activity, Location, Package, Notification, Resource, Telephony, Window.

  • Native C/C++ Libraries

Ini adalah support yang diberikan oleh Android untuk para developer yang menggunakan bahasa C dan C++ untuk mengembangkan aplikasinya. Beberapa library yang dapat kita kembangkan adalah OpenGL ES, Webkit, dll.

  • Android Runtime (ART)

Untuk Android dengan versi 5.0 keatas sudah memiliki komponen Android Runtime, ART akan menggantikan Dalvik Virtual Machine (VM). Dengan menggunakan ART proses pada start up akan lebih cepat dibandingkan Dalvik VM. Fitur dari ART sendiri adalah :
      • Kompilasi Ahead-of-Time (AOT) dan Just-in-Time (JIT)
      • Optimasi Garbage Collection (GC)
      • Support Debugging yang lebih bagus

  • Hardware Abstraction Layer (HAL)

HAL akan menyediakan interface untuk mengekspos kemampuan hardware ke tingkat Java API Framework yang lebih tinggi. HAL terdiri dari beberapa modul library yang mengimplementasikan interface setiap hardware yang berbeda misal kamera atau bluetooth atau yang lainnya.

  • Linux Kernel

Linux Kernel ini adalah inti dari sistem operasi Android yang akan mengatur drivers agar hardware dapat berjalan dengan semestinya.

Sekian artikel tentang Mengenal Komponen Arsitektur Android. Bagaimana, sudah mengerti kan? Jika sudah maka kita akan siap untuk memulai tutorial yang lebih dalam di postingan selanjutnya yaitu Memulai Project Baru di Android Studio