System
operasi android
Android adalah sistem operasi yang
berbasis Linux untuk telepon seluler seperti telepon pintar dan komputer
tablet. Android menyediakan platform terbuka bagi para pengembang untuk
menciptakan aplikasi mereka sendiri untuk digunakan oleh bermacam peranti
bergerak. Awalnya, Google Inc. membeli Android Inc., pendatang baru yang
membuat peranti lunak untuk ponsel. Kemudian untuk mengembangkan Android,
dibentuklah Open Handset Alliance, konsorsium dari 34 perusahaan peranti keras,
peranti lunak, dan telekomunikasi, termasuk Google, HTC, Intel, Motorola,
Qualcomm, T-Mobile, dan Nvidia.
Pada saat perilisan perdana Android, 5 November 2007,
Android bersama Open Handset Alliance menyatakan mendukung pengembangan standar
terbuka pada perangkat seluler. Di lain pihak, Google merilis kode–kode Android
di bawah lisensi Apache, sebuah lisensi perangkat lunak dan standar terbuka
perangkat seluler.
SEJARAH SYSTEM OPERASI ANDROID
Di dunia ini terdapat dua jenis
distributor sistem operasi Android. Pertama yang mendapat dukungan penuh dari
Google atau Google Mail Services (GMS) dan kedua adalah yang benar–benar bebas
distribusinya tanpa dukungan langsung Google atau dikenal sebagai Open Handset
Distribution (OHD).
Kerjasama dengan Android Inc.
Pada Juli 2005, Google bekerjasama dengan Android Inc.,
perusahaan yang berada di Palo Alto, California Amerika Serikat. Para pendiri
Android Inc. bekerja pada Google, di antaranya Andy Rubin, Rich Miner, Nick
Sears, dan Chris White. Saat itu banyak yang menganggap fungsi Android Inc.
hanyalah sebagai perangkat lunak pada telepon seluler. Sejak saat itu muncul
rumor bahwa Google hendak memasuki pasar telepon seluler. Di perusahaan Google,
tim yang dipimpin Rubin bertugas mengembangkan program perangkat seluler yang
didukung oleh kernel Linux. Hal ini menunjukkan indikasi bahwa Google sedang
bersiap menghadapi persaingan dalam pasar telepon seluler.
Produk awal
Sekitar September 2007 sebuah studi melaporkan bahwa Google
mengajukan hak paten aplikasi telepon seluler (akhirnya Google mengenalkan
Nexus One, salah satu jenis telepon pintar GSM yang menggunakan Android pada
sistem operasinya. Telepon seluler ini diproduksi oleh HTC Corporation dan
tersedia di pasaran pada 5 Januari 2010).
Pada 9 Desember 2008, diumumkan anggota baru yang bergabung
dalam program kerja Android ARM Holdings, Atheros Communications, diproduksi
oleh Asustek Computer Inc, Garmin Ltd, Softbank, Sony Ericsson, Toshiba Corp,
dan Vodafone Group Plc. Seiring pembentukan Open Handset Alliance, OHA
mengumumkan produk perdana mereka, Android, perangkat bergerak (mobile) yang
merupakan modifikasi kernel Linux 2.6. Sejak Android dirilis telah dilakukan
berbagai pembaruan berupa perbaikan bug dan penambahan fitur baru.
Telepon pertama yang memakai sistem operasi Android adalah
HTC Dream, yang dirilis pada 22 Oktober 2008. Pada penghujung tahun 2009
diperkirakan di dunia ini paling sedikit terdapat 18 jenis telepon seluler yang
menggunakan Android.
Android versi 1.1
Pada 9 Maret 2009, Google merilis Android versi 1.1. Android
versi ini dilengkapi dengan pembaruan estetis pada aplikasi, jam alarm, voice
search (pencarian suara), pengiriman pesan dengan Gmail, dan pemberitahuan
email.
Android versi 1.5 (Cupcake)
Pada pertengahan Mei 2009, Google kembali merilis telepon
seluler dengan menggunakan Android dan SDK (Software Development Kit) dengan
versi 1.5 (Cupcake). Terdapat beberapa pembaruan termasuk juga penambahan
beberapa fitur dalam seluler versi ini yakni kemampuan merekam dan menonton video
dengan modus kamera, mengunggah video ke Youtube dan gambar ke Picasa langsung
dari telepon, dukungan Bluetooth A2DP, kemampuan terhubung secara otomatis ke
headset Bluetooth, animasi layar, dan keyboard pada layar yang dapat
disesuaikan dengan sistem.
Android versi 1.6 (Donut)
Donut (versi 1.6) dirilis pada bulan September dengan
menampilkan proses pencarian yang lebih baik dibanding sebelumnya, penggunaan
baterai indikator dan kontrol applet VPN. Fitur lainnya adalah galeri yang
memungkinkan pengguna untuk memilih foto yang akan dihapus; kamera, camcorder
dan galeri yang dintegrasikan; CDMA / EVDO, 802.1x, VPN, Gestures, dan
Text-to-speech engine; kemampuan dial kontak; teknologi text to change speech
(tidak tersedia pada semua ponsel; pengadaan resolusi VWGA.
Android versi 2.0/2.1 (Eclair)
Pada 3 Desember 2009 kembali diluncurkan ponsel Android
dengan versi 2.0/2.1 (Eclair), perubahan yang dilakukan adalah pengoptimalan
hardware, peningkatan Google Maps 3.1.2, perubahan UI dengan browser baru dan
dukungan HTML5, daftar kontak yang baru, dukungan flash untuk kamera 3,2 MP,
digital Zoom, dan Bluetooth 2.1.
Untuk bergerak cepat dalam persaingan perangkat generasi
berikut, Google melakukan investasi dengan mengadakan kompetisi aplikasi mobile
terbaik (killer apps - aplikasi unggulan). Kompetisi ini berhadiah $25,000 bagi
setiap pengembang aplikasi terpilih. Kompetisi diadakan selama dua tahap yang
tiap tahapnya dipilih 50 aplikasi terbaik.
Dengan semakin berkembangnya dan semakin bertambahnya jumlah
handset Android, semakin banyak pihak ketiga yang berminat untuk menyalurkan
aplikasi mereka kepada sistem operasi Android. Aplikasi terkenal yang diubah ke
dalam sistem operasi Android adalah Shazam, Backgrounds, dan WeatherBug. Sistem
operasi Android dalam situs Internet juga dianggap penting untuk menciptakan
aplikasi Android asli, contohnya oleh MySpace dan Facebook.
Android versi 2.2 (Froyo: Frozen Yoghurt)
Pada 20 Mei 2010, Android versi 2.2 (Froyo) diluncurkan.
Perubahan-perubahan umumnya terhadap versi-versi sebelumnya antara lain
dukungan Adobe Flash 10.1, kecepatan kinerja dan aplikasi 2 sampai 5 kali lebih
cepat, intergrasi V8 JavaScript engine yang dipakai Google Chrome yang
mempercepat kemampuan rendering pada browser, pemasangan aplikasi dalam SD
Card, kemampuan WiFi Hotspot portabel, dan kemampuan auto update dalam aplikasi
Android Market.
Android versi 2.3 (Gingerbread)
Pada 6 Desember 2010, Android versi 2.3 (Gingerbread)
diluncurkan. Perubahan-perubahan umum yang didapat dari Android versi ini
antara lain peningkatan kemampuan permainan (gaming), peningkatan fungsi copy
paste, layar antar muka (User Interface) didesain ulang, dukungan format video
VP8 dan WebM, efek audio baru (reverb, equalization, headphone virtualization,
dan bass boost), dukungan kemampuan Near Field Communication (NFC), dan
dukungan jumlah kamera yang lebih dari satu.
Android versi 3.0/3.1 (Honeycomb)
Android Honeycomb dirancang khusus untuk tablet. Android
versi ini mendukung ukuran layar yang lebih besar. User Interface pada
Honeycomb juga berbeda karena sudah didesain untuk tablet. Honeycomb juga
mendukung multi prosesor dan juga akselerasi perangkat keras (hardware) untuk
grafis. Tablet pertama yang dibuat dengan menjalankan Honeycomb adalah Motorola
Xoom. Perangkat tablet dengan platform Android 3.0 akan segera hadir di
Indonesia. Perangkat tersebut bernama Eee Pad Transformer produksi dari Asus.
Rencana masuk pasar Indonesia pada Mei 2011.
Android versi 4.0 (ICS: Ice Cream Sandwich)
Diumumkan pada tanggal 19 Oktober 2011, membawa fitur Honeycomb
untuk smartphone dan menambahkan fitur baru termasuk membuka kunci dengan
pengenalan wajah, jaringan data pemantauan penggunaan dan kontrol, terpadu
kontak jaringan sosial, perangkat tambahan fotografi, mencari email secara
offline, dan berbagi informasi dengan menggunakan NFC. Ponsel pertama yang
menggunakan sistem operasi ini adalah Samsung Galaxy Nexus.
Android versi 4.1 (Jelly Bean)
Android Jelly Bean yaang diluncurkan pada acara Google I/O
lalu membawa sejumlah keunggulan dan fitur baru. Penambahan baru diantaranya
meningkatkan input keyboard, desain baru fitur pencarian, UI yang baru dan
pencarian melalui Voice Search yang lebih cepat. Tak ketinggalan Google Now
juga menjadi bagian yang diperbarui. Google Now memberikan informasi yang tepat
pada waktu yang tepat pula. Salah satu kemampuannya adalah dapat mengetahui
informasi cuaca, lalu-lintas, ataupun hasil pertandingan olahraga. Sistem
operasi Android Jelly Bean 4.1 muncul pertama kali dalam produk tablet Asus,
yakni Google Nexus 7.
Android versi 4.2 (Jelly Bean)
Fitur photo sphere untuk panaroma, daydream sebagai
screensaver, power control, lock screen widget, menjalankan banyak user (dalam
tablet saja), widget terbaru.
Android 4.2 Pertama kali dikenalkan melalui LG, yakni Google
Nexus 4.
Fitur
Fitur yang tersedia di Android adalah:
Kerangka aplikasi: itu memungkinkan penggunaan dan
penghapusan komponen yang tersedia.
Dalvik mesin virtual: mesin virtual dioptimalkan untuk
perangkat telepon seluler.
Grafik: grafik di 2D dan grafis 3D berdasarkan pustaka
OpenGL.
SQLite: untuk penyimpanan data.
Mendukung media: audio, video, dan berbagai format gambar
(MPEG4, H.264, MP3, AAC, AMR, JPG, PNG, GIF)
GSM, Bluetooth, EDGE, 3G, 4G dan WiFi (tergantung piranti
keras)
Kamera, Global Positioning System (GPS), kompas, NFC dan
accelerometer (tergantung piranti keras)
Android bagi komunitas sumber terbuka
Android memiliki berbagai keunggulan sebagai piranti lunak
yang memakai basis kode komputer yang bisa didistribusikan secara terbuka (open
source) sehingga pengguna bisa membuat aplikasi baru di dalamnya. Android
memiliki aplikasi native Google yang terintegrasi seperti pushmail Gmail,
Google Maps, dan Google Calendar.
Para penggemar open source kemudian membangun komunitas yang
membangun dan berbagi Android berbasis firmware dengan sejumlah penyesuaian dan
fitur-fitur tambahan, seperti FLAC lossless audio dan kemampuan untuk menyimpan
download aplikasi pada microSD card. Mereka sering memperbaharui paket-paket
firmware dan menggabungkan elemen-elemen fungsi Android yang belum resmi
diluncurkan dalam suatu carrier-sanction firmware.
Cara kerja system android
Google sebagai pencipta Android yang kemudian diasuh oleh
Open Handset Alliance mengibaratkan Android sebagai sebuah tumpukan software.
Setiap lapisan dari tumpukan ini menghimpun beberapa program yang mendukung
fungsi-fungsi spesifik dari sistem operasi. Tumpukan paling bawah adalah
kernel. Google menggunakan kernel Linux versi 2.6 untuk membangun Android, yang
mencakup memory management, security setting, power management, dan beberapa
driver hardware.
Cara Kerja Arsitektur Android
Sebagai contoh, device android anda yang dilengkapi dengan
kamera. Kernel Android terdapat driver kamera yang memungkinkan pengguna
mengirimkan perintah kepada hardware kamera. Level berikutnya dari tumpukan ini
adalah library, yakni serangkaian instruksi kepada smartphone yang berisi cara
menangani data-data yang berbeda. Sebagai contoh, media framework library pada
Android mendukung pemutaran dan perekaman berbagai format audio, video, dan
gambar.
Bertempat di level yang sama dengan library adalah lapisan
runtime yang mencakup serangkaian inti library Java. Dengannya, para programmer
dapat mengembangkan aplikasi untuk Android menggunakan bahasa pemrograman Java.
Lapisan selanjutnya adalah application framework, yang mencakup program untuk
mengatur fungs i- fungsi dasar smartphone.
Application framework merupakan serangkaian tool dasar
seperti alokasi resource smartphone, aplikasi telepon, pergantian antar-proses
atau program, dan pelacakan lokasi fisik telepon. Para pengembang aplikasi
memiliki akses penuh kepada tool-tool dasar tersebut, dan memanfaatkannya untuk
menciptakan aplikasi yang lebih kompleks.
Dilapisan teratas bercokol aplikasi itu sendiri. Dilapisan
inilah Anda menemukan fungsi - fungsi dasar smartphone, seperti menelepon dan
mengirim pesan singkat, menjalankan web browser, mengakses daftar kontak, dan
lain-lain. Bagi rata-rata pengguna, lapisan inilah yang paling sering mereka
akses. Mereka mengakses fungsi-fungsi dasar tersebut melalui user interface.
Ada 4 hal yang harus dipahami dalam membangun aplikasi
berbasis Android :
Activity adalah tampilan grafis yang kita lihat ketika
menjalankan sebuah aplikasi. Sebuah aplikasi dapat mempunyai lebih dari satu
activity.
Intent adalah serangkaian value yang menunjukan apa yang
harus dilakukan ketika terjadi perpindahan layar.
Service adalah layanan yang bekerja di Backend
Content provider memungkinkan sebuah aplikasi untuk dapat
menyimpan dan menerima data dari database.
Sistem Operasi Google Android di Ponsel memang terbilang
masih baru, tetapi Sistem Operasi Android telah mengalami perkembangan yang
cukup pesat. Diciptakan sebagai tandingan iOS, Android menunjukan grafik
perkembangan yang signifikan, tentunya hal itu juga tidak lepas dari dukungan
para pabrikan ponsel besar yang juga ikut andil menghadirkan ponsel-ponsel
bersistem operasi Android.
Penjelasan:
Dalam paket sistem operasi android tediri dari beberapa
unsur seperti tampak pada gambar di bawah. Secara sederhana arsitektur android
merupakan sebuah kernel Linux dan sekumpulan pustaka C / C++ dalam suatu
framework yang menyediakan dan mengatur alur proses aplikasi.[Google IO,
Android Anatomy and Physiology].
1. Linux Kernel
Android dibangun di atas kernel Linux 2.6. Namun secara
keseluruhan android bukanlah linux, karena dalam android tidak terdapat paket
standar yang dimiliki oleh linux lainnya. Linux merupakan sistem operasi
terbuka yang handal dalam manajemen memori dan proses. Oleh karenanya pada
android hanya terdapat beberapa servis yang diperlukan seperti keamanan,
manajemen memori, manajemen proses, jaringan dan driver. Kernel linux
menyediakan driver layar, kamera, keypad, WiFi, Flash Memory, audio, dan IPC
(Interprocess Communication) untuk mengatur aplikasi dan lubang keamanan.
2. Libraries
Android menggunakan beberapa paket pustaka yang terdapat
pada C/C++ dengan standar Berkeley Software Distribution (BSD) hanya setengah
dari yang aslinya untuk tertanam pada kernel Linux. Beberapa pustaka
diantaranya:
• Media Library untuk memutar dan merekam berbagai macam
format audio dan video.
• Surface Manager untuk mengatur hak akses layer dari
berbagai aplikasi.
• Graphic Library termasuk didalamnya SGL dan OpenGL, untuk
tampilan 2D dan 3D.
• SQLite untuk mengatur relasi database yang digunakan pada
aplikasi.
• SSl dan WebKit untuk browser dan keamanan internet.
Pustaka-pustaka tersebut bukanlah aplikasi yang berjalan
sendiri, namun hanya dapat digunakan oleh program yang berada di level atasnya.
Sejak versi Android 1.5, pengembang dapat membuat dan menggunakan pustaka
sendiri menggunakan Native Development Toolkit (NDK).
3. Android Runtime
Pada android tertanam paket pustaka inti yang menyediakan
sebagian besar fungsi android. Inilah yang membedakan Android dibandingkan
dengan sistem operasi lain yang juga mengimplementasikan Linux. Android Runtime
merupakan mesin virtual yang membuat aplikasi android menjadi lebih tangguh
dengan paket pustaka yang telah ada. Dalam Android Runtime terdapat 2 bagian
utama, diantaranya:
• Pustaka Inti, android dikembangkan melalui bahasa
pemrograman Java, tapi Android Runtime bukanlah mesin virtual Java. Pustaka
inti android menyediakan hampir semua fungsi yang terdapat pada pustaka Java
serta beberapa pustaka khusus android.
• Mesin Virtual Dalvik, Dalvik merupakan sebuah mesin
virtual yang dikembangkan oleh Dan Bornstein yang terinspirasi dari nama sebuah
perkampungan yang berada di Iceland. Dalvik hanyalah interpreter mesin virtual
yang mengeksekusi file dalam format Dalvik Executable (*.dex). Dengan format
ini Dalvik akan mengoptimalkan efisiensi penyimpanan dan pengalamatan memori
pada file yang dieksekusi. Dalvik berjalan di atas kernel Linux 2.6, dengan
fungsi dasar seperti threading dan manajemen memori yang terbatas. [Nicolas
Gramlich, Andbook, anddev.org]
4. Application Framework
Kerangka aplikasi menyediakan kelas-kelas yang dapat
digunakan untuk mengembangkan aplikasi android. Selain itu, juga menyediakan
abstraksi generik untuk mengakses perangkat, serta mengatur tampilan user
interface dan sumber daya aplikasi. Bagian terpenting dalam kerangka aplikasi
android adalah sebagai berikut [Hello Android 2nd Edition]:
1. Activity Manager, berfungsi untuk mengontrol siklus hidup
aplikasi dan menjaga keadaan ”Backstack“ untuk navigasi penggunaan.
2. Content Providers, berfungsi untuk merangkum data yang
memungkinkan digunakan oleh aplikasi lainnya, seperti daftar nama.
3. Resuource Manager, untuk mengatur sumber daya yang ada
dalam program. Serta menyediakan akses sumber daya diluar kode program, seperti
karakter, grafik, dan file layout.
4. Location Manager, berfungsi untuk memberikan informasi
detail mengenai lokasi perangkat android berada.
5. Notification Manager, mencakup berbagai macam peringatan
seperti, pesan masuk, janji, dan lain sebagainya yang akan ditampilkan pada
status bar.
5. Application Layer
Puncak dari diagram arsitektur android adalah lapisan
aplikasi dan widget. Lapisan aplikasi merupakan lapisan yang paling tampak pada
pengguna ketika menjalankan program. Pengguna hanya akan melihat program ketika
digunakan tanpa mengetahui proses yang terjadi dibalik lapisan aplikasi.
Lapisan ini berjalan dalam Android runtime dengan menggunakan kelas dan service
yang tersedia pada framework aplikasi.
Lapisan aplikasi android sangat berbeda dibandingkan dengan
sistem operasi lainnya. Pada android semua aplikasi, baik aplikasi inti
(native) maupun aplikasi pihak ketiga berjalan diatas lapisan aplikasi dengan
menggunakan pustaka API (Application Programming Interface) yang sama.
Komponen Aplikasi
Fitur penting android adalah bahwa satu aplikasi dapat
menggunakan elemen dari aplikasi lain (untuk aplikasi yang memungkinkan).
Sebagai contoh, sebuah aplikasi memerlukan fitur scroller dan aplikasi lain
telah mengembangkan fitur scroller yang baik dan memungkinkan aplikasi lain
menggunakannya. Maka pengembang tidak perlu lagi mengembangkan hal serupa untuk
aplikasinya, cukup menggunakan scroller yang telah ada [developer.android.com].
Agar fitur tersebut dapat bekerja, sistem harus dapat
menjalankan aplikasi ketika setiap bagian aplikasi itu dibutuhkan, dan
pemanggilan objek java untuk bagian itu. Oleh karenanya android berbeda dari
sistem-sistem lain, Android tidak memiliki satu tampilan utama program seperti
fungsi main() pada aplikasi lain. Sebaliknya, aplikasi memiliki komponen
penting yang memungkinkan sistem untuk memanggil dan menjalankan ketika
dibutuhkan.
1. Activities
Activity merupakan bagian yang paling penting dalam sebuah
aplikasi, karena Activity menyajikan tampilan visual program yang sedang
digunakan oleh pengguna. Setiap Activity dideklarasikan dalam sebuah kelas yang
bertugas untuk menampilkan antarmuka pengguna yang terdiri dari Views dan
respon terhadap Event. Setiap aplikasi memiliki sebuah activity atau lebih.
Biasanya pasti akan ada activity yang pertama kali tampil ketika aplikasi
dijalankan.
Perpindahan antara activity dengan activity lainnya diatur
melalui sistem, dengan memanfaatkan activity stack. Keadaan suatu activity
ditentukan oleh posisinya dalam tumpukan acitivity, LIFO (Last In First Out)
dari semua aplikasi yang sedang berjalan. Bila suatu activity baru dimulai,
activity yang sebelumnya digunakan maka akan dipindahkan ketumpukan paling
atas. Jika pengguna ingin menggunakan activity sebelumnya, cukup menekan tombol
Back, atau menutup activity yang sedang digunakan, maka activity yang berada
diatas akan aktif kembali. Memory Manager android menggunakan tumpukkan ini
untuk menentukan prioritas aplikasi berdasarkan activity, memutuskan untuk
mengakhiri suatu aplikasi dan mengambil sumber daya dari aplikasi tersebut.
Ketika activity diambil dan disimpan dalam tumpukkan
activity terdapat 4 kemungkinan kondisi transisi yang akan terjadi [Reto Meier,
Profesional Android Application Development, Wiley Publishing, Canada, 2009]:
1) Active, setiap activity yang berada ditumpukan paling
atas, maka dia akan terlihat, terfokus, dan menerima masukkan dari pengguna.
Android akan berusaha untuk membuat activity aplikasi ini untuk untuk tetap
hidup dengan segala cara, bahkan akan menghentikan activity yang berada dibawah
tumpukkannya jika diperlukan. Ketika activity sedang aktif, maka yang lainnya
akan dihentikan sementara.
2) Paused, dalam beberapa kasus activity akan terlihat tapi
tidak terfokus pada kondisi inilah disebut paused. Keadaan ini terjadi jika
activity transparan dan tidak fullscreen pada layar. Ketika activity dalam
keadaan paused, dia terlihat active namun tidak dapat menerima masukkan dari
pengguna. Dalam kasus ekstrim, android akan menghentikan activity dalam keadaan
paused ini, untuk menunjang sumber daya bagi activity yang sedang aktif.
3) Stopped, ketika sebuah activity tidak terlihat, maka
itulah yang disebut stopped. Activity akan tetap berada dalam memori dengan
semua keadaan dan informasi yang ada. Namun akan menjadi kandidat utama untuk
dieksekusi oleh sistem ketika membutuhkan sumberdaya lebih. Oleh karenanya
ketika suatu activity dalam kondisi stopped maka perlu disimpan data dan
kondisi antarmuka saat itu. Karena ketika activity telah keluar atau ditutup,
maka dia akan menjadi inactive.
4) Inactive, kondisi ketika activity telah dihentikan dan
sebelum dijalankan. Inactive activity telah ditiadakan dari tumpukan activity
sehingga perlu restart ulang agar dapat tampil dan digunakan kembali.
Kondisi transisi ini sepenuhnya ditangani oleh manajer
memori android. Android akan memulai menutup aplikasi yang mengandung activity
inactive, kemudian stopped activity, dan dalam kasus luar biasa paused activity
juga akan di tutup.
2. Services
Suatu service tidak memiliki tampilan antarmuka, melainkan
berjalan di background untuk waktu yang tidak terbatas. Komponen service
diproses tidak terlihat, memperbarui sumber data dan menampilkan notifikasi.
Service digunakan untuk melakukan pengolahan data yang perlu terus diproses,
bahkan ketika Activity tidak aktif atau tidak tampak.
3. Intents
Intens merupakan sebuah mekanisme untuk menggambarkan
tindakan tertentu, seperti memilih foto, menampilkan halaman web, dan lain
sebagainya. Intents tidak selalu dimulai dengan menjalankan aplikasi, namun
juga digunakan oleh sistem untuk memberitahukan ke aplikasi bila terjadi suatu
hal, misal pesan masuk. Intents dapat eksplisit atau implisit, contohnya jika suatu
aplikasi ingin menampilkan URL, sistem akan menentukan komponen apa yang
dibutuhkan oleh Intents tersebut.
4. Broadcast Receivers
Broadcast Receivers merupakan komponen yang sebenarnya tidak
melakukan apa-apa kecuali menerima dan bereaksi menyampaikan pemberitahuan.
Sebagian besar Broadcast berasal dari sistem misalnya, Batre sudah hampir
habis, informasi zona waktu telah berubah, atau pengguna telah merubah bahasa
default pada perangkat. Sama halnya dengan service, Broadcast Receivers tidak
menampilkan antarmuka pengguna. Namun, Broadcast Receivers dapat menggunakan
Notification Manager untuk memberitahukan sesuatu kepada pengguna.
5. Content Providers
Content Providers digunakan untuk mengelola dan berbagi
database. Data dapat disimpan dalam file sistem, dalam database SQLite, atau
dengan cara lain yang pada prinsipnya sama. Dengan adanya Content Provider
memungkinkan antar aplikasi untuk saling berbagi data. Komponen ini sangat
berguna ketika sebuah aplikasi membutuhkan data dari aplikasi lain, sehingga
mudah dalam penerapannya.
Tipe Aplikasi Android
Terdapat tiga kategori aplikasi pada android [Reto Meier,
Profesional Android Application Development, Wiley Publishing, Canada, 2009] :
1. Foreground Activity
Aplikasi yang hanya dapat dijalankan jika tampil pada layar
dan tetap efektif walaupun tidak terlihat. Aplikasi dengan tipe ini pasti
mempertimbangkan siklus hidup activity, sehingga perpindahan antar activity
dapat berlangsung dengan lancar.
2. Background Service
Aplikasi yang memiliki interaksi terbatas dengan user,
selain dari pengaturan konfigurasi, semua dari prosesnya tidak tidak tampak
pada layar. Contohnya aplikasi penyaringan panggilan atau sms auto respon.
3. Intermittent Activity
Aplikasi yang masih membutuhkan beberapa masukkan dari pengguna,
namun sebagian sangat efektif jika dijalankan di background dan jika diperlukan
akan memberi tahu pengguna tentang kondisi tertentu. Contohnya pemutar musik.
Untuk aplikasi yang kompleks akan sulit untuk menentukan
kategori aplikasi tersebut apalagi aplikasi memiliki ciri-ciri dari semua
kategori. Oleh karenanya perlu pertimbangan bagaimana aplikasi tersebut
digunakan dan menentukan kategori aplikasi yang sesuai.
Siklus Hidup Aplikasi Android
Siklus hidup aplikasi android dikelola oleh sistem, berdasarkan
kebutuhan pengguna, sumberdaya yang tersedia, dan sebagainya. Misalnya Pengguna
ingin menjalankan browser web, pada akhirnya sistem yang akan menentukan
menjalankan aplikasi. Sistem sangat berperan dalam menentukan apakah aplikasi
dijalankan, dihentikan sementara, atau dihentikan sama sekali. Jika pengguna
ketika itu sedang menjalankan sebuah Activity, maka sistem akan memberikan
perioritas utama untuk aplikasi yang tersebut. Sebaliknya, jika suatu Activity
tidak terlihat dan sistem membutuhkan sumber daya yang lebih, maka Activity
yang prioritas rendah akan ditutup. [Sayed . Y. Hashimi and Satya Komatineni,
Pro Android, Apress, USA 2009]
Android menjalankan setiap aplikasi dalam proses secara
terpisah, yang masing-masing memliki mesin virtual pengolah sendiri, dengan ini
melindungi penggunaan memori pada aplikasi. Selain itu juga android dapat
mengontrol aplikasi mana yang layak menjadi prioritas utama. Karenanya android
sangat sensitive dengan siklus hidup aplikasi dan komponen-komponennya. Perlu adanya
penanganan terhadap setiap kondisi agar aplikasi menjadi stabil.
Sebagai contoh dibawah ini
skema audio pada android:
untuk lebih jelasnya , silakan download link di
http://www.4shared.com/rar/d7yJSFGf/pengenalan_dan_kerja_sistem_op.html
juga referensi di
id.wikipedia.org/wiki/Android_(sistem_operasi)
www.android-indonesia.com/
thankz.
Tidak ada komentar:
Posting Komentar