Android API Framework dan Android Runtime (ART)

Android API Framework

AWesome
4 min readSep 8, 2023
  • Apa itu Android API Framework?

Android API Framework adalah kumpulan perangkat lunak dan komponen yang tersedia untuk pengembang Android. Ini memungkinkan akses ke berbagai fitur perangkat keras dan layanan sistem seperti notifikasi, pengelolaan sumber daya, pengelolaan aktivitas, dan lainnya.

sumber: developer.android.com

Setiap API dapat memiliki level yang berbeda, yang mengindikasikan versi android tertentu yang memperkenalkan atau mengubah API tersebut. Saat artikel ini ditulis API pada android sudah ada API level 34, Setiap versi android yang baru biasanya memperkenalkan API baru atau memperbarui API yang ada untuk memberikan fungsionalitas tambahan atau perbaikan. Pengembang android harus memilih API level yang sesuai sesuai dengan target perangkat mereka untuk memastikan aplikasi mereka berfungsi dengan baik di berbagai perangkat android dengan berbagai versi, untuk melakukan konfigurasi API dapat menggunakan Software Development Kit (SDK) yang di sudah disediakan pada Android Studio saat pembuatan aplikasi.

  • Beberapa fitur yang bisa diakses melalui API ini antara lain:
  1. Sistem antarmuka yang kaya dan dapat diperluas untuk membuat tampilan dan antarmuka pengguna aplikasi, termasuk daftar, kotak teks, tombol, dan bahkan browser web yang dapat disisipkan.
  2. Pengelola sumber daya yang memungkinkan aplikasi untuk mengakses sumber daya seperti teks lokal, gambar, dan tata letak tanpa perlu menyisipkan semuanya di dalam kode.
  3. Pengelola notifikasi yang memungkinkan aplikasi menampilkan pemberitahuan khusus di bilah status perangkat.
  4. Pengelola aktivitas yang mengatur siklus hidup aplikasi dan menyediakan navigasi umum untuk kembali ke layar sebelumnya.
  5. Penyedia konten yang memungkinkan aplikasi mengakses data dari aplikasi lain, seperti aplikasi Kontak, atau berbagi data mereka sendiri.

Dengan menggunakan API Framework ini, para pengembang memiliki akses penuh ke API yang sama yang digunakan oleh aplikasi sistem android. Ini memungkinkan para pengembang untuk menciptakan aplikasi yang kaya fitur dan interaktif dengan menggunakan fitur-fitur inti dari Android tanpa harus menulis semuanya dari awal.

  • Bagaimana Android API Framework Bekerja dengan Arsitektur Android Lainnya?

Android API Framework sebagai lapisan tinggi dalam arsitektur Android dapat berinteraksi dengan komponen lapisan lainnya. Saat aplikasi di install yang pertama kali menyambut System Apps, kemudian System Apps akan mengecek versi API yang digunakan, selanjutnya turun ke API Framework untuk menyesuaikan versi API yang digunakan, jika sudah sama kemudian dapat berjalan di ART/Dalvix, jika ada kebutuhan akses seperti sidik jari akan disambungkan ke HAL, dan jika ada kebutuhan library akan disambungkan ke Native C .

Android Runtime

  • Apa itu Android Runtime?

Android Runtime (ART) adalah runtime terkelola yang digunakan oleh aplikasi dan beberapa layanan sistem di Android.

Sederhananya, saat aplikasi android dibuat kemudian dikompilasi menjadi APK, bagian yang ada di dalam APK yaitu file .dex (Dalvik Executable), file tersebut berisi bytecode dari aplikasi dan juga library yang digunakan. Ketika aplikasi dijalankan oleh pengguna, bytecode yang ada di dalam file .dex diterjemahkan oleh ART ke dalam kode mesin.

sumber: proandroiddev.com
  • Bagaimana ART dan Dalvik bekerja?

ART yang pertama digunakan disebut Dalvik (Sebelum Android 5.0 atau KitKat), Dalvik digunakan untuk nengoptimalkan penggunaan memori, strategi yang digunakan yaitu Just In Time (JIT compilation), kompilasi bytecode dilakukan hanya saat aplikasi digunakan sehingga membutuhkan memori sedikit yang digunakan.

ART mulai digunakan pada Andrioid 5.0 atau Lollipop, strategi kompilasi yang digunakan yaitu Ahead of Time (AOT), ART melakukan kompilasi sebelum waktu eksekusi untuk mengubah .dex menjadi kode mesin sehingga meningkatkan performa aplikasi dan mengurangi waktu opsi pembebanan saat aplikasi dibuka.

Pada Android versi 7.0 atau Nougat digunakan Profile guided compilation, ART akan melakukan kompilasi berbasis profil dari file .dex (bytecode) dirubah menjadi mesin kode menggunakan strategi AOT, kode mesin tersebut kemudian disimpan dalam format Optimized ART (OAT).

sumber: proandroiddev.com

Saat ini dimulai dari Android versi 9 atau Pie digunakan Profiles in the cloud, pengoptimalan aplikasi berdasarkan data profil penggunaan yang dikumpulkan secara agregat dari banyak pengguna, jadi ketika pengguna melakukan instalasi, APK yang didownload tersebut sudah berdasarkan profil pengguna yang sama.

sumber: proandroiddev.com

Referensi:

--

--

No responses yet