• Tidak ada hasil yang ditemukan

Android merupakan sistem operasi yang dikembangkan untuk perangkat mobile berbasis Linux.

2.2.1. Arsitektur Android

Sistem operasi Android dibangun berdasarkan kernel Linux dan memiliki arsitektur seperti gambar 1.1 berikut.

Gambar 2.2 Arsitektur Android

2.2.1.1. Application

Lapisan ini adalah lapisan aplikasi, serangkaian aplikasi akan terdapat pada perangkat mobile. Aplikasi inti yang telah terdapat pada Android termasuk kalender, kontak, SMS, dan lain sebagainya.Aplikasi-aplikasi ini ditulis dengan bahasa pemrograman Java.

2.2.1.2. Application Framework

Pengembangan aplikasi memiliki akses penuh ke Android sama dengan aplikasi inti yang telah tersedia. Pengembang dapat dengan mudah mengakses informasi lokasi, mengatur alarm, menambahkan pemberitahuan ke status bar dan lain sebagainya. Arsitektur aplikasi ini dirancang untuk menyederhanakan penggunaan kembali komponen, aplikasi apa pun dapat memubikasikan kemampuan dan aplikasi lain dapat menggunakan kemampuan mereka sesuai batasan keamanan. Dasar dari aplikasi adalah seperangkat layanan dan sistem, yaitu berbagai View yang digunakan untuk membangun UI, Content Provider yang memungkinkan aplikasi berbagi data,

ResourceManager menyediakan akses bukan kode sperti grafik, string, dan layout NotificationManager yang akan membuat aplikasi dapat menampilkan tanda pada status bar dan

ActivityManager yang berguna mengatur daur hidup dari aplikasi.

2.2.1.3. Libraries

Satu set libraries dalam bahasa C/C++ yang digunakan oleh berbagai komponen pada system Android.

2.2.1.4. Android Runtime

Satu set libraries inti yang menyediakan sebagian besar fungsi yang tersedia di libraries inti dari bahasa pemrograman Java. Setiap aplikasi akan berjalan sebagai proses sendiri pada Dalvik Virtual Machine (VM).

2.2.1.5. Linux Kernel

Android bergantung pada Linux versi 2.6 untuk layanan system inti seperti keamanan, manajemen memori, manajemen proses, network stack, dan model driver.Kernel juga bertindak sebagai lapisan antara hardware dan seluruh software

2.2.2. Komponen Dasar

Aplikasi Android ditulis dalam bahasa pemrograman Java. Java mengompilasi kode bersama dengan data resource dan file yang dibutuhkan oleh aplikasi dibundel ke dalam paket Android, file arsip ditandai dengan .apk. Komponen aplikasi pada Android terdiri dari 4 komponen utama, yaitu :

2.2.2.1. Activities

Activities merupakan potongan kode executable yang menyajikan UI secara visual dimulai oleh pengguna maupun

sistem operasi dan berjalan selama diperlukan.Activities

biasanya sesuai dengan tampilan layar : masing-masing

Activities menunjukkan satu layar untuk pengguna.

Activitiesyang tidak aktif dijalankan dapat dimatikan oleh sistem operasi untuk menghemat memori.

2.2.2.2. Service

Service tidak memiliki visual UI, melainkan berjalan di latar belakang untuk waktu yang tidak terbatas. Contoh dari service

adalah MP3 player yang akan terus memainkan file MP3 sesuai urutan file, walaupun pengguna menggunakan aplikasi lain.

2.2.2.3. Broadcast Receiver

Broadcast Receiver merupakan komponen yang menerima dan bereaksi untuk menyiarkan pengumuman.Banyak siaran berasal dalam kode sistem, misalnya pengumuman bahwa zona waktu telah berubah, baterai rendah, bahwa gambar telah diambil, atau bahwa pengguna mengubah preferensi bahasa. Aplikasi juga dapat melakukan siaran misalnya untuk membiarkan aplikasi lain tahu bahwa beberapa data teah di-download ke perangkat dan tersedia sehingga dapat digunakan.

Content Providerdiciptakan untuk berbagi data dengan Activities lain atau Service. Sebuah Content Provider menggunakan antarmuka standar dalam bentuk URI untuk memenuhi permintaan data dari aplikasi lain.

2.2.3. Daur Hidup Activity

Activity memiliki tiga status dasar : 1. Active atau Running

Status ini ketika Activity berjalan di foreground (di bagian atas stack untuk task ini). Activity yang berkaitan aktif dengan pengguna.

2. Pause

Jika Activity telah kehilangan focus tetapi masih dapat dilihat oleh pengguna yang berarti ada Activity lain yang berjalan di atas Activity ini, sebuah Activity yang transparan atau tidak menutupi layar penuh sehingga Activity dalam status pause dapat terlihat. Sebuah Activity dalam status pause tetap hidup, yaitu Android tetap mempertahankan semua informasi dan tetap melekat pada Windows Manager hingga akhirnya dapat dimatikan oleh sistem ketika memori sangat rendah.

Activity benar-benar dihentikan karena ada Activity lain yang memenuhi layar. Semua informasi dipertahankan tetapi tidak dapat dilihat oleh pengguna sehingga jendela tersembunyi dan dapat dimatikan oleh sistem ketika memori dibutuhkan.

Metode yang terdapat pada Activity :

 onCreate()

Dipanggil ketika Activity pertama kali dibuat.Biasanya merupakan metode di mana View yang ingin ditampilkan dibuat, membuka data file, maupun menginisialisasi Activity.Saat memanggil OnCreate, kerangka Android melewati sebuah Bundel objek yang mengandung state activity yang disimpan ketika Activity pertama berjalan.

 onStart()

Dipanggil sebelum Activity terlihat pada layar. Ketika Activity dapat menjadi Activity foreground, maka akan dipanggil method OnResume() sedangkan jika tidak maka akan dipanggil method OnStop().

 onResume()

Dipanggil setelah OnStart() apabila Activity dapat menjadi foreground. Saat ini, Activity dapat bereaksi dengan pengguna.OnResume() juga akan dipanggil ketika Activity ini tidak menjadi foreground karena ada Activity lain lalu Activity lain akhirnya selesai dan Activity kembali menjadi foreground.

 onPause()

Dipanggil ketika Activity lain dibawa ke foreground. Pada status ini Activity tidak memiliki akses ke layar.

 onStop()

Dipanggil ketika Activity tidak lagi terlihat karena adanya Activity lain yang dibawa ke foreground atau Activity ini dimatikan.

 OnDestroy()

Dipanggil terakhir sebelum Activity dimatikan ketika Android membutuhkan resources yang digunakan oleh Activity.

2.2.4. Daur Hidup Service

Daur hidup Service hapir sama dengan Activity tetapi memiliki beberapa perbedaan untuk detailnya.

 OnCreate() dan OnStart()

Dipanggil apabila seseorang klien memanggil Context.startService(Intent). Jika service belum berjalan maka Android akan membuatnya dan memanggil OnCreate() diikuti method OnStart(). Apabila service telah berjalan, Android hanya akan memanggil OnStart().

 OnBind()

Ketika klien membutuhkan koneksi ke service maka akan dipanggil Context.bind. Pemanggilan ini akan mengakibatkan

pembuatan service apabila service tidak sedang berjalan tanpa memanggil OnStart().

 OnDestroy()

Sama dengan Activity, method ini akan dipanggil ketika service akan dimatikan. Android akan mematikan service apabila telah tidak ada lagi klien yang memulai atau bind ke service ini.

BAB III.

ANALISIS DAN PERANCANGAN SISTEM

Dokumen terkait