Proses Pembuatan Aplikasi Android sampai Berjalan

AWesome
3 min readSep 8, 2023

--

Pada artikel ini saya akan membahas tentang bagaimana aplikasi android dibuat sampai aplikasi tersebut berjalan.

proses pembuatan aplikasi android sampai berjalan
  • Proses pembuatan aplikasi
  1. Langkah pertama yaitu pembuatan kode sumber aplikasi android. Kode sumber ini ditulis dalam bahasa pemrograman Java atau Kotlin. Ini adalah tahap di mana Anda mendefinisikan perilaku aplikasi, antarmuka pengguna, dan segala sesuatu yang akan dilihat dan dialami oleh pengguna.
  2. Selain kode sumber, dua komponen penting lainnya: Android Manifest dan Resource. Android Manifest adalah file XML yang berisi informasi penting tentang aplikasi, seperti izin yang diperlukan, aktivitas utama, dan banyak lagi. Resource adalah direktori yang berisi sumber daya tambahan seperti gambar, tata letak, dan string yang digunakan dalam aplikasi.
  3. Setelah memiliki kode sumber, Android Manifest, Libraries dan Resource, langkah selanjutnya adalah mengompilasi Android Manifest dan Resource menggunakan Android Asset Packaging Tool (AAPT). Hasil dari kompilasi ini adalah “compiled resources” dan file “R.java”. File “R.java” adalah representasi kode sumber dari semua sumber daya yang didefinisikan dalam Resource.
  4. Sekarang kita memiliki kode sumber, libraries, dan file “R.java”. Selanjutnya, komponen tersebut akan dikompilasi menjadi Java bytecode menggunakan kompiler Java (javac). Java bytecode adalah bentuk kode antara yang akan diubah menjadi kode mesin saat aplikasi dijalankan pada perangkat Android.
  5. Java bytecode yang dihasilkan dalam langkah sebelumnya selanjutnya dikonversi menjadi file “classes.dex” menggunakan alat yang disebut dexer. File “classes.dex” berisi semua instruksi yang diperlukan oleh Dalvik Virtual Machine (sebelum Android 5.0) atau Android Runtime (mulai dari Android 5.0) untuk menjalankan aplikasi android.
  6. File “classes.dex” dan “compiled resources” kemudian akan dikompilasi bersama menggunakan alat pengembangan android seperti Gradle. Proses ini akan menghasilkan sebuah unsigned APK.
  7. Setelah tahap kompilasi selesai, kita akan memiliki sebuah APK yang belum ditandatangani. Ini adalah file “unsigned APK” yang masih memerlukan tanda tangan digital.
  8. Langkah terakhir adalah menandatangani APK dengan private key menggunakan alat seperti Jarsigner. Tanda tangan digital ini memberikan identitas dan keamanan pada APK, dan ini juga memungkinkan perangkat android untuk memastikan bahwa APK belum dimodifikasi sejak dibuat oleh pengembangnya. Setelah menyelesaikan langkah ini, kita akan memiliki sebuah APK yang siap untuk didistribusikan dan diinstal pada perangkat Android.
  • Proses instalasi APK

Setelah proses pembuatan APK selesai langkah selanjutnya yaitu proses instalasi APK pada perangkat android sampai berjalan.

  1. Ketika menyalakan perangkat android, dan listrik dari baterai masuk ke dalam “bootroom” yang ada di ROM. Bootroom akan memuat bootloader.
  2. Bootloader secara default akan memanggil kernel sistem, yang merupakan inti dari sistem operasi tersebut. Di dalam kernel nanti akan memulai proses pertama, yaitu “init.”
  3. Proses “init” adalah proses pertama yang berjalan setelah kernel dimulai. Ini adalah proses yang bertanggung jawab untuk menginisialisasi sistem Android.
  4. Proses “init” akan menginisialisasi proses “zygote,” yang merupakan proses induk. Zygote berperan penting dalam pembuatan proses aplikasi baru.
  5. Zygote akan membuat virtual mesin yang disebut “Android Runtime” (ART). ART adalah tempat di mana kode aplikasi Android akan dieksekusi.
  6. Ketika kita menginstal aplikasi baru, tugas ini ditangani oleh “package manager” yang ada di bagian sistem server. Package manager melakukan sejumlah tugas seperti menentukan lokasi instalasi paket, menyalin file APK, menentukan UID aplikasi, dsb.
  7. Setelah proses instalasi selesai, aplikasi akan dijalankan di dalam ART. ART akan menjalankan kode aplikasi, memungkinkan kita untuk menggunakan aplikasi tersebut pada perangkat Anda.
  8. Setelah proses di ART, kontrol akan dikembalikan ke “system server.” Ini adalah komponen utama dari sistem operasi Android yang mengelola berbagai layanan seperti pesan teks, panggilan telepon, dsb.
  9. Dari system server, kontrol akan dialihkan ke “activity manager.” Activity manager adalah komponen yang mengelola aktivitas atau layar aplikasi yang Kita lihat.
  10. Akhirnya, dari activity manager, pengguna akan dibawa ke “launcher” atau layar beranda perangkat, yang merupakan antarmuka pengguna utama yang dapat digunakan oleh pengguna.
  • Apa Itu Zygote?

Zygote adalah proses induk atau proses parent dalam sistem android yang bertanggung jawab untuk menciptakan proses baru.

  • Bagaimana File Executable Android Berkomunikasi dengan Zygote saat Membuat Subproses di sistem android?

Ketika file eksekusi android ingin membuat subproses, ia berkomunikasi dengan Zygote. Zygote memiliki peran kunci dalam menginisiasi proses baru. Ketika Zygote dipanggil dengan perintah “ — zygote start system server,” Zygote akan memulai server sistem dan melakukan proses “forking” untuk menjalankan subproses yang diminta oleh aplikasi.

  • Jelaskan Hubungan Proses yang Terjadi dengan Kernel Signal Handler SIGCHLD?

SIGCHLD adalah sinyal yang digunakan untuk memberi tahu proses induk (Zygote) bahwa salah satu atau lebih dari anak prosesnya telah selesai atau keluar. Ini memungkinkan proses induk untuk membersihkan sumber daya yang digunakan oleh anak proses yang telah selesai.

--

--

No responses yet