Libraries Android Runtime Activities Service Broadcast Receiver Location Based Service LBS dan Google Maps

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.

c. Libraries

Satu set libraries dalam bahasa CC++ yang digunakan oleh berbagai komponen pada sistem Android.

d. 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.

e. 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.7.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 [5]:

a. 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. Activities yang tidak aktif dijalankan dapat dimatikan oleh sistem operasi untuk menghemat memori.

b. 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.

c. 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.

d. Content Provider

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

2.7.3 Daur Hidup Activity

Activity memiliki tiga status dasar yaitu [5] : 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 fokus 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. 3. Stop 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 : 1. 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. 2. 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. 3. 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 . 4. onPause Dipanggil ketika Activity lain dibawa ke foreground. Pada status ini Activity tidak memiliki akses ke layar. 5. onStop Dipanggil ketika Activity tidak lagi terlihat karena adanya Activity lain yang dibawa ke foreground atau Activity ini dimatikan. 6. OnDestroy Dipanggil terakhir sebelum Activity dimatikan ketika Android membutuhkan resources yang digunakan oleh Activity.

2.7.4 Daur Hidup Service

Daur hidup Service hampir sama dengan Activity tetapi memiliki beberapa perbedaan untuk detailnya. [5] 1. OnCreate dan OnStart Dipanggil apabila seseorang klien memanggil Context.startServiceIntent. Jika service belum berjalan maka Android akan membuatnya dan memanggil OnCreate diikuti method OnStart. Apabila service telah berjalan, Android hanya akan memanggil OnStart. 2. 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. 3. 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.

2.8 Location Based Service LBS dan Google Maps

Salah satu fitur yang mendefinisikan ponsel adalah mudah dibawa, sehingga tidak mengherankan bahwa beberapa fitur Android paling menarik adalah layanan yang memungkinkan untuk menemukan, mengkontekstualisasikan, dan lokasi peta secara fisik. Dengan menggunakan Google Maps, pengguna dapat membuat peta berbasis Aktivitas sebagai elemen User Interface. Pengguna memiliki akses penuh ke peta, yang memungkinkan untuk mengontrol pengaturan tampilan, mengubah tingkat zoom, dan memindahkan lokasi terpusat. Dengan menggunakan Overlay, pengguna dapat menambahkan keterangan peta dan menangani masukan pengguna untuk memberikan informasi dan fungsi dari map-contextualized . Layanan berbasis lokasi LBS - layanan yang memungkinkan pengguna menemukan lokasi perangkat. Termasuk teknologi seperti GPS dan teknologi Google berbasis sel lokasi. Pengguna dapat menentukan teknologi lokasi- sensing menggunakan eksplisit dengan nama, atau secara implisit dengan mendefinisikan seperangkat kriteria dalam hal akurasi, biaya, dan persyaratan lainnya. Peta dan layanan berbasis lokasi menggunakan garis lintang dan bujur untuk menentukan lokasi geografis, namun pengguna lebih cenderung untuk berpikir menggunakan alamat. Android menyediakan geocoder yang mendukung perubahan geocoding. Menggunakan geocoder, pengguna dapat mengkonversi bolak-balik antara lintang bujur nilai-nilai dan alamat dunia nyata. Pemetaan, geocoding, dan layanan berbasis lokasi digunakan bersama- sama menyediakan menyediakan perangkat canggihuntuk menggabungkan mobilitas ponsel ke dalam aplikasi mobile pengguna. Location Based Service LBS merupakan istilah umum yang digunakan untuk menggambarkan berbagai teknologi yang digunakan untuk menemukan lokasi perangkat saat ini. Ada dua elemen LBS yaitu [6]: a. Location Manager : menyediakan pengait ke Location Based Service. Fungsi dari Location Manager yaitu mendapatkan lokasi saat ini, melacak perpindahan dan mengatur tanda kedekatan untuk mendeteksi gerakan masuk dan keluar dari area tertentu. b. Location Providers : masing-masing mewakili teknologi lokasi-temuan yang berbeda yang digunakan untuk menentukan lokasi perangkat.

2.9 Sistem Infromasi