Rabu, 09 Juli 2014

Penulisan Ilmiah

BAB I

PENDAHULUAN


1.1       Latar Belakang Masalah

                Kemajuan teknologi yang sangat pesat seiring dengan kemajuan zaman terutama di bidang teknologi informasi atau yang di sebut “Zaman Teknologi”. Salah satu contoh nya adalah operating sistem yang berbeda dari masa ke masa yang di gunakan untuk memudahkan penggunanya sebagai alat bantu pengolahan kata, aplikasi bisnis perkantoran dan sebagainya. Handphone pada saat ini sudah merupakan suatu kebutuhan yang sangat penting bagi sebagian masyarakat.  Aplikasi Kamus di Android merupakan sebuah contoh aplikasi yang sering digunakan untuk penerjemah bahasa. Di bandingkan dengan kamus buku, melalui aplikasi handphone ini jauh lebih efisien dan mudah untuk di bawa kemana – mana, tanpa menggunakan internet, tidak usah khawatir buku akan basah terkena air hujan atau air minum dan pencarian kata jauh lebih mudah dan lebih cepat. Melalui media ini banyak informasi yang dapat diperoleh dengan mudah dan lebih menarik. Informasi yang menarik itu di tampilkan dalam bentuk multimedia ataupun software interaktif. Berdasarkan permsalahan diatas maka dibuatlah penulisan ilmiah ini dengan judul “PEMBUATAN KAMUS INDONESIA - BELANDA BERBASIS ANDROID ”.

1.2       Batasan Masalah

                Batasan masalah yang diambil dalam penulisan ilmiah ini adalah perancangan kamus belanda indonesia berbasis android. Batasan kata yang digunakan pada kamus ini berjumlah 500 kata. Pada aplikasi ini akan menampilkan terjemahan bahasa dari bahasa Belanda menjadi bahasa Indonesia, dan cara pembuatannya. Untuk itu dalam penulisan ilmiah ini, dibuatlah aplikasi berbasis android menggunakan software Java 1.7, Eclipse + Android SDK, Update Eclipse ADT, Update SDK, Create AVD yang nantinya akan membantu untuk menyajikan informasi bagi para pengguna agar lebih mudah dalam pencarian kata.

1.3       Tujuan Penulisan

                Adapun tujuan dari penelitian ini adalah memberikan dan mempermudah untuk mencari kata tanpa harus menggunakan internet, maka diharapkan akan semakin banyak orang yang memakai Aplikasi Kamus di Android. informasi mengenai terjemahan kata dan memudahkan pengguna untuk menerjemahkan bahasa Indonesia menjadi bahasa Belanda yang bisa digunakan kapan saja dan dimana saja.

1.4       Metode Penelitian

            Metode penelitian yang digunakan pada penulisan ilmiah ini adalah :
1. Identifikasi Masalah        
            Untuk mengumpulkan data dan informasi tentang Kamus Belanda Indonesia dan pembuatan aplikasi, penulis mengambil referensi melalui studi kepustakaan.

2. Analisis Data
                Pada tahap ini, penulis mencari dan merangkum kepustakaan yang dapat menunjang pengerjaan penulisan ini. Penelitian yang dilakukan dengan mempelajari buku-buku karya ilmiah, literatur serta dokumentasi yang ada kaitannya dengan penelitian ini yang penulis pergunakan sebagai bahan acuan dalam pemecahan masalah.

3. Perancangan dan pembuatan aplikasi
                Pada tahap ini berupa kegiatan perancangan  struktur navigasi, perancangan tampilan kamus, serta pembuatan aplikasi kamus dengan menggunakan perangkat lunak yang dibutuhkan.

4. Uji Coba aplikasi
                Pada tahap ini penulis akan mencoba aplikasi ini di berbagai smartphone berbeda dan spesifikasi yang berbeda.

1.5       Sistematika Penulisan
                Untuk memudahkan dalam memberikan gambaran tentang penulisan ini maka dalam penyajiannya, diuraikan ke dalam 4 bab. Adapun uraiannya adalah sebagai berikut :

BAB I PENDAHULUAN
                Pada bab satu ini membahas mengenai latar belakang masalah, batasan masalah, tujuan penulisan, metode penelitian, dan sistematika penulisan.

BAB II  LANDASAN TEORI
                Bab ini membahas mengenai landasan teori tentang pengenalan software – software yang digunakan dan jenis-jenisnya  serta materi lainnya yang mendukung pembuatan aplikasi ini.

BAB III ANALISA DAN PEMBAHASAN
                Pada bab ini menjelaskan tentang perencanaan, analisis, perancangan serta pembuatan dan ujicoba aplikasi Kamus Belanda Indonesia.

BAB IV PENUTUP
                Bab empat merupakan bab terakhir berisi kesimpulan berdasarkan hasil pembahasan serta saran dari aplikasi yang telah dibuat.

2. LANDASAN TEORI

2.1       Kamus

            Kamus adalah sejenis buku rujukan yang menerangkan makna kata-kata. Ia berfungsi untuk membantu seseorang mengenal perkataan baru. Selain menerangkan maksud kata, kamus juga mungkin mempunyai pedoman sebutan, asal usul (etimologi) sesuatu perkataan dan juga contoh penggunaan bagi sesuatu perkataan. Untuk memperjelas kadang kala terdapat juga ilustrasi di dalam kamus. Biasanya hal ini terdapat dalam kamus bahasa Perancis.
            Kata kamus diserap dari bahasa Arab qamus (قاموس), dengan bentuk jamaknya qawamis. Kata Arab itu sendiri berasal dari kata Yunani Ωκεανός (okeanos) yang berarti 'samudra'. Sejarah kata itu jelas memperlihatkan makna dasar yang terkandung dalam kata kamus, yaitu wadah pengetahuan, khususnya pengetahuan bahasa, yang tidak terhingga dalam dan luasnya. Dewasa ini kamus merupakan khazanah yang memuat perbendaharaan kata suatu bahasa, yang secara ideal tidak terbatas jumlahnya.
            Leksikografi adalah bidang ilmu bahasa yang mengkaji cara pembuatan kamus. Sebagian besar (atau bahkan semua) sarjana memiliki kamus, namun mereka belum tentu tahu bahwa penulisan kamus yang baik harus melalui berbagai proses. Dua nama besar yang mengawali penyusunan kamus adalah Samuel Johnson (1709-1784) dan Noah Webster (1758-1843). Johnson, ahli bahasa dari Inggris, membuat Dictionary of the English Language pada tahun 1755, yang terdiri atas dua volume. Di Amerika, Webster pertama kali membuat kamus An American Dictionary of the English Language pada tahun 1828, yang juga terdiri atas dua volume. Selanjutnya, pada tahun 1884 diterbitkan Oxford English Dictionary yang terdiri atas 12 volume.




2.2       Aplikasi Mobile
            Aplikasi Mobile adalah sebuah aplikasi yang memungkinkan Anda melakukan mobilitas dengan menggunakan perlengkapan seperti PDA, telepon seluler atau Handphone. Dengan menggunakan aplikasi mobile, Anda dapat dengan mudah melakukan berbagai macam aktifitas mulai dari hiburan, berjualan, belajar, mengerjakan pekerjaan kantor, browsing dan lain sebagainya. Pemanfaatan aplikasi mobile untuk hiburan paling banyak digemari oleh hampir 70% pengguna telepon seluler, karena dengan memanfaatkan adanya fitur game, music player, sampai video player membuat kita menjadi semakin mudah menikmati hiburan kapan saja dan dimanapun.
            J2ME adalah satu set spesifikasi dan teknologi yang fokus kepada perangkat konsumen. Perangkat ini memiliki jumlah memori yang terbatas, menghabiskan sedikit daya dari baterei, layar yang kecil dan bandwith jaringan yang rendah.
            Karateristik dari perangkat mobile, dan bagaimana hal tersebut mempengaruhi pengembangan program untuk perangkat ini. Kita akan diperkenalkan kepada Java 2 Mobile Edition (J2ME), termasuk pentingnya configuration dan profilenya.
            The Mobile Information Device Profile (MIDP) berada di atas dari The Connected Limited Device Configuration (CLDC). Anda tidak bisa menulis aplikasi mobile hanya dengan menggunakan CLDC API. Anda harus tetap memanfaatkan MIDP yang mendefinisikan UI.
            Spesifikasi MIDP, kebanyakan seperti CLDC dan API lainnya sudah digambarkan melalui Java Community Process (JCP). JCP melibatkan sebuah kelompok ahli berasal dari lebih dari 50 perusahaan, yang terdiri atas pabrik perangkat mobile, pengembang software. MIDP terus berkembang, dengan versi-versi masa depan yang telah lulus dari proses ketat JCP.
            Suatu aplikasi MIDP disebut MIDlet. Perangkat application management software (AMS) berinteraksi langsung dengan MIDlet dengan method MIDlet create, start, pause, dan destroy.
            MIDlet adalah bagian dari package javax.microedition.midlet. Sebuah MIDlet harus di-extend dengan class MIDlet. Dan dapat meminta parameter dari AMS seperti dirumuskan dalam application descriptor (JAD).
            Suatu MIDlet tidak harus memiliki (dan memang harus tidak mempunyai) sebuah method public static void main(String[] argv).Method tersebut tidak akan dikenal lagi oleh AMS sebagai titik awal sebuah program.
            Aplikasi-aplikasi MIDlet dibungkus dan dikirim kedalam perangkat sebagai MIDlet suites. Sebuah MIDlet suite terdiri dari Java Archive (JAR) dan sebuah tambahan Java Application Descriptor (JAD). File JAD adalah suatu file teks yang berisi satu set atribut-atribut, beberapa dibutuhkan.

2.3       Eclipse
            Eclipse adalah sebuah IDE (Integrated Development Environment) untuk mengembangkan perangkat lunak dan dapat dijalankan di semua platform (platform-independent). Berikut ini adalah sifat dari Eclipse:
·         Multi-platform: Target sistem operasi Eclipse adalah Microsoft Windows, Linux, Solaris, AIX, HP-UX dan Mac OS X.
·         Mulit-language: Eclipse dikembangkan dengan bahasa pemrograman Java, akan tetapi Eclipse mendukung pengembangan aplikasi berbasis bahasa pemrograman lainnya, seperti C/C++, Cobol, Python, Perl, PHP, dan lain sebagainya.
·         Multi-role: Selain sebagai IDE untuk pengembangan aplikasi, Eclipse pun bisa digunakan untuk aktivitas dalam siklus pengembangan perangkat lunak, seperti dokumentasi, test perangkat lunak, pengembangan web, dan lain sebagainya.
            Eclipse pada saat ini merupakan salah satu IDE favorit dikarenakan gratis dan open source, yang berarti setiap orang boleh melihat kode pemrograman perangkat lunak ini. Selain itu, kelebihan dari Eclipse yang membuatnya populer adalah kemampuannya untuk dapat dikembangkan oleh pengguna dengan komponen yang dinamakan plug-in.
            Eclipse awalnya dikembangkan oleh IBM untuk menggantikan perangkat lunak IBM Visual Age for Java 4.0. Produk ini diluncurkan oleh IBM pada tanggal 5 November 2001, yang menginvestasikan sebanyak US$ 40 juta untuk pengembangannya. Semenjak itu konsursium Eclipse Foundation mengambil alih untuk pengembangan Eclipse lebih lanjut dan pengaturan organisasinya. Sejak versi 3.0, Eclipse pada dasarnya merupakan sebuah kernel, yang mengangkat plug-in. Apa yang dapat digunakan di dalam Eclipse sebenarnya adalah fungsi dari plug-in yang sudah diinstal. Ini merupakan basis dari Eclipse yang dinamakan Rich Client Platform (RCP). Berikut ini adalah komponen yang membentuk RCP:
·         Core platform
·         OSGi
·         SWT (Standard Widget Toolkit)
·         Jface
·         Eclipse Workbench
            Secara standar Eclipse selalu dilengkapi dengan JDT (Java Development Tools), plug-in yang membuat Eclipse kompatibel untuk mengembangkan program Java, dan PDE (Plug-in Development Environment) untuk mengembangkan plug-in baru. Eclipse beserta plug-in-nya diimplementasikan dalam bahasa pemrograman Java. Konsep Eclipse adalah IDE yang terbuka (open), mudah diperluas (extensible) untuk apa saja, dan tidak untuk sesuatu yang spesifik. Jadi, Eclipse tidak saja untuk mengembangkan program Java, akan tetapi dapat digunakan untuk berbagai macam keperluan, cukup dengan menginstal plug-in yang dibutuhkan. Apabila ingin mengembangkan program C/C++ terdapat plug-in CDT(C/C++ Development Tools). Selain itu, pengembangan secara visual bukan hal yang tidak mungkin oleh Eclipse, plug-in UML2 tersedia untuk membuat diagram UML. Dengan menggunakan PDE setiap orang bisa membuat plug-in sesuai dengan keinginannya. Salah satu situs yang menawarkan plug-in secara gratis seperti Eclipse downloads by project



2.4       Pengertian Android
            Android  merupakan subset perangkat lunak untuk mobile yang meliputi sistem operasi, middleware dan aplikasi inti yang di realese oleh google. Sedangkan Android SDK ( Software Development Kit ) menyediakan tools  dan API yang diperlukan untuk mengembangkan aplikasi pada platform android dengan menggunakan bahasa pemrograman java. Dikembangkan bersama antara google, HTC, Intel, Motorola, Qualcomm, T-Mobile, NVIDIA yang tergabung dalam OHA (Open Handset Alliancce) dengan tujuan membuat sebuah standar terbuka untuk perangkat bergerak (mobile device)

A.        Features
·         Application framework : mendukung penggantian komponen dan reusable
·         Dalvik virtual machine : berjalan pada kernel Linux dan dioptimalkan untuk perangkat mobile
·         Integrated browser berdasarkan open source engine WebKit
·         Optimized graphics : dioptimalkan dan didukung oleh library grafis 2D dan 3D berdasarkan spesifikasi OpenGL ES 1,0 (Opsional akselerasi hardware).
·         SQLite : untuk penyimpanan data
·         Media Support : mendukung audio, video dan gambar (MPEG4, H.264, MP3, AAC, AMR, JPG, PNG, GIF)
·         GSM Telephony (tergantung pada hardware)
·         Bluetooth, EDGE, 3G, and Wifi
·         Camera, GPS, compass and accelerometer
·         Multi-touch : kemampuan layaknya handset modern yang dapat menggunakan dua jari atau lebih untuk berinteraksi dengan perangkat
·         Rich development environment : termasuk perangkat emulator, tools untuk debugging, profil dan kinerja memori, dan plugin untuk Eclipse IDE
·         Market Android : market pada Android merupakan katalog aplikasi yang dapat didownload secara free maupun berbayar dan dapat diinstall pada ponsel.
B.        Arsitektur Android
            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]:
·         Activity Manager, berfungsi untuk mengontrol siklus hidup aplikasi dan menjaga keadaan ”Backstack“ untuk navigasi penggunaan.
·         Content Providers, berfungsi untuk merangkum data yang memungkinkan digunakan oleh aplikasi lainnya, seperti daftar nama.
·         Resuource Manager, untuk mengatur sumber daya yang ada dalam program. Serta menyediakan akses sumber daya diluar kode program, seperti karakter, grafik, dan file layout.
·         Location Manager, berfungsi untuk memberikan informasi detail mengenai lokasi perangkat android berada.
·         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.

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

A.        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]:
·         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.
·         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.
·         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.
·         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.

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


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

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

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

7.         Tipe Aplikasi Android
            Terdapat tiga kategori aplikasi pada android [Reto Meier, Profesional Android Application Development, Wiley Publishing, Canada, 2009] :



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

B.        Background Service
            Aplikasi yang memiliki interaksi terbatas dengan user, selain dari pengaturan konfigurasi, semua dari prosesnya tidak tidak tampak pada layar. Contohnya aplikasi Intermittent Activity yang berfungsi sebagai penyaringan panggilan atau sms auto respon.

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


9.         Kelebihan Android
·         Multitasking = Kalau   anda   pernah   merasakan   keunggulan   dari Symbian yang bisa membuka beberapa aplikasi sekaligus, begitu juga Android  yang  mampu  membuka  beberapa  aplikasi  sekaligus  tanpa harus menutup salah satunya.
·         Kemudahan dalam Notifikasi = Setiap ada SMS, Email, atau bahkan artikel terbaru dari RSS Reader, akan selalu ada notifikasi di Home Screen Ponsel Android, tak ketinggalan Lampu LED Indikator yang berkedip-kedip,  sehingga  Anda  tidak  akan  terlewatkan  satu  SMS, Email ataupun Misscall sekalipun.
·         Akses  Mudah  terhadap  Ribuan  Aplikasi  Android  lewat   GoogleAndroid App Market = Kalau Anda gemar install aplikasi ataupun games, lewat Google Android App Market Anda bisa mendownloadberbagai aplikasi dengan gratis. Ada banyak ribuan aplikasi dan gamesyang siap untuk Anda download di ponsel Android.
·         Pilihan Ponsel yang beranekaragam = Bicara ponsel Android, akan terasa beda dibandingkan dengan iOS, jika iOS hanya terbatas pada iPhone dari Apple, maka Android tersedia di ponsel dari berbagai produsen, mulai dari Sony Ericsson, Motorola, HTC, Lenovo, LG, Apple sampai Samsung. Bahkan tidak pula ketinggalan vendor vendor lokal yang tidak kalah dengan ponsel branded.


2.5       Jenis-jenis OS Android :
A.         Android versi 1.1
            Andoid versi 1.1 di rilis pada 9 Maret 2009 oleh Google.  Android versi ini dilengkapi disupport oleh Google Mail Service dengan pembaruan estetis pada aplikasi, jam alarm, voice search (pencarian suara), pengiriman pesan dengan Gmail, dan pemberitahuan email.

B.         Android versi 1.5 Cup Cake
            Android Cup Cake di rilis pada pertengahan Mei 2009, masih oleh Google Inc. Adroid ini dilengkapi software development kit dengan berbagai pembaharuan termasuk penambahan beberapa fitur antara lain yakni kemampuan merekam dan menonton video dengan modus kamera, mengunggah video ke Youtube, upload gambar ke Picasa langsung dari telepon, serta mendapat dukungan Bluetooth A2DP.


C.         Android versi 1.6 Donut
            Android Donut di rilis pada September 2009 menampilkan proses pencarian yang lebih baik dibandingkan versi-versi sebelumnya. Selain itu Android Duut memiliki fitur-fitur tambahan seperti galeri yang memungkinkan pengguna untuk memilih foto yang akan dihapus; kamera, camcorder dan galeri yang dintegrasikan; Text-to-speech engine; kemampuan dial kontak; teknologi text to change speech. Android Donut juga dilengkapi  baterai indikator, dan kontrol applet VPN.

D.         Android versi 2.0/2.1 Eclair
            Android Eclair dirilis pada 3 Desember 2009. Perubahan yang ada antara lain 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. Android Eclair merupakan Adroid pertama  yang mulai dipakai oleh banyak smartphone, fitur utama Eclair yaitu perubahan total struktur dan tampilan user interface.

E.         Android versi 2.2 Froyo (Frozen Yogurt)
            Android Froyo dirilis pada 20 mei 2012. Adroid versi ini memiliki kecepatan kinerja dan aplikasi 2 sampai 5 kali dari versi-versi sebelumnya. Selain itu ada penambahan fitur-fitur baru seperti dukungan Adobe Flash 10.1,  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.

F.          Android versi 2.3 Gingerbread
            Andoid Gingerbread di rilis pada 6 Desember 2010. 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.

G.         Android versi 3.0/3.1 Honeycomb
            Android Honeycomb di rilis pada awal 2012. Merupakan versi Android yang dirancang khusus untuk device dengan layar besar seperti Tablet PC. Fitur baru yang ada pada Android Honeycomb antara lain yaitu dukungan terhadap prosessor multicore dan grafis dengan hardware acceleration. User Interface pada Honeycomb juga berbeda karena sudah didesain untuk tablet. Tablet pertama yang memakai Honeycomb adalah tablet Motorola Xoom yang dirilis bulan Februari 2011. Selain itu sebuah perangkat keras produksi Asus  bernama Eee Pad Transformer juga menggunakan OS Android honeycomb dan diharapkan akan masuk ke pasaran Indonesia pada Mei 2011.

H.         Android versi 4.0 ICS (Ice Cream Sandwich)
            Android Ice Cream Sandwich diumumkan secara resmi pada 10 Mei 2011 di ajang Google I/O Developer Conference (San Francisco), pihak Google mengklaim Android Ice Cream Sandwich akan dapat digunakan baik di smartphone ataupun tablet. Android Ice Cream Sandwich membawa fitur Honeycomb untuk smartphone serta ada penambahan fitur baru seperti 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.
I.           Android versi 4.1 Jelly Bean
            Android Jelly Bean juga diluncurkan pada acara Google I/O  10 Mei 2011 yang lalu. Android versi ini membawa sejumlah keunggulan dan fitur baru, diantaranya peningkatkan input keyboard, desain baru fitur pencarian, UI yang baru dan pencarian melalui Voice Search yang lebih cepat. Versi ini juga dilengkapi Google Now yang dapat 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 pertama kali digunakan dalam produk tablet Asus, yakni Google Nexus 7.

J.          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 Google Nexus 4.

K.        Android versi 4.3 Jelly Bean
            Android versi 4.3 Jelly bean ini dipakai di high-end smartphones yang diperkenalkan pada acara IFA 2013 di Berlin lalu. Versi ini hadir dengan fitur Multi Resricted Profiles yang memungkinkan user untuk mengontrol aplikasi yang bisa dijalankan, terutama pada smartphone atau tablet yang digunakan bersama-sama. Selain itu, versi ini dilengkapi dengan fitur Bluetooth Smart Technology yaitu fitur yang memungkinkan user untuk menghubungkan sebuah alat / gadget kepada smartphone atau tablet dengan android 4.3 didalamnya tanpa khawatir menghilangkan banyak daya. Selain itu, android versi ini mendukung sistem Open GL ES 3.0 yang berfungsi untuk meningkatkan performa grafis yang lebih bagus dan realistis .

L.        Android versi 4.4 Kitkat
            Android versi 4.4 adalah versi yang paling baru. Fitur yang tertanam didalamnya adalah fitur SMS yang terintegrasi langsung kedalam Aplikasi Google Hangouts, Terdapat fasilitas Could Printing dimana pengguna dapat printing secara nirkabel / mengirim perintah ke leptop yang terhubung dengan printer. Selain itu, desain ikon dan tema yang lebih unik, Navigasi dan statusbar yang mengalami pembaruan, interface yang sangat halus, mendengarkan perintah suara dari Google Now tanpa menguras banyak daya, dan Bisa mengakses aplikasi kamera dari layar yang terkunci.

2.6       Android SDK
            Android SDK adalah tools API (Aplication Programming Interface) yang digunakan untuk mulai mengembangkan aplikasi pada platform android menggunakan bahasa pemrograman Java. Android merupakan subset perangkat lunak untuk ponsel yang meliputi sistem operasi, middleware dan aplikasi kunci yang di release oleh Google. Saat ini disediakan android SDK (Software Development Kit) sebagai alat bantu dan API untuk mulai mengembangkan aplikasi pada platform android menggunakan bahasa pemrograman Java. Sebagai platform aplikasi netral, android memberi anda kesempatan untuk membuat aplikasi yang kita butuhkan yang bukan merupakan aplikasi bawaan hanphone/smartphone. Beberapa fitur android yang paling penting adalah :
·         Framework aplikasi yang mendukung penggantian komponen dan reusable.
·         Mesin Virtual Dalvik dioptimalkan untuk perangkat mobile.
·         Integrated browser berdasarkan engine open source webkit.
·         Grafis yang dioptimalkan dan didukung oleh libraries grafis 2D, grafis 3D berdasarkan spesifikasi openGL ES 1.0 (Opsional Akselerasi Hardware).
·         SQLite untuk penyimpanan data.
·         Media Support yang mendukung audio, video dan gambar (MPEG4, H.264, MP3, AAC, AMR, JPG, PNG, GIF), GSM Telephony (tergantung hardware).
·         Bluetooth, EDGE, 3G, WiFi (tergantung hardware).
·         Kamera, GPS, kompas dan Accelerator (tergantung hardware).
·         Lingkungan development yang lengkap dan kaya, termasuk perangkat emulator, tools untuk debuging, profil dan kinerja memori, dan plug in untuk IDE Eclipse.


2.7       Android Development Tools
            Android Development Tools (ADT) adalah plugin yang didesain untuk IDE Eclipse yang memberikan kita kemudahan dalam mengembangkan aplikasi android dengan menggunakan IDE Eclipse. Dengan menggunakan ADT untuk Eclipse akan memudahkan kita dalam membuat aplikasi project android, membuat GUI aplikasi, dan menambakan komponen-kompenen yang lainnya, begitu juga kita dapat melakukan running aplikasi menggunakan Android SDK melalui Eclipse. Dengan ADT juga kita dapat melakukan pembuatan package android (.apk) yang digunakan untuk distribusi aplikasi android yang kita rancang.
Mengembangkan aplikasi android dengan menggunakan ADT di eclipse sangat dianjurkan dan sangat mudah untuk memulai mengembangkan aplikasi android.
Berikut adalah versi ADT untuk eclipse yang sudah dirilis :
·         ADT 12.0.0 (Juli 2011)
·         ADT 11.0.0 (June 2011)
·         ADT 10.0.1 (March 2011)
·         ADT 10.0.0 (February 2011)
·         ADT 9.0.0 (January 2011)
·         ADT 8.0.1 (Desember 2010)
·         ADT 8.0.0 (Desember 2010)
·         ADT 0.9.9 (September 2010)
·         ADT 0.9.8 (September 2010)
·         ADT 0.9.7 (May 2010)
·         ADT 0.9.6 (March 2010)
·         ADT 0.9.5 (Desember 2009)
·         ADT 0.9.4 (Oktober 2009)
            Semakin tinggi platform android yang kita gunakan, dianjurkan menggunakan ADT yang lebih terbaru, karena biasanya munculnya platform baru diikuti oleh munculnya versi ADT yang terbaru. Untuk melakukan instalasi ADT di-elipse dapat dilakukan secara on-line maupun offline.

2.8       Java dan Java Development Kit
            Java adalah sebuah teknologi yang diperkenalkan oleh Sun Microsysytems pada pertengahan tahun 1990. Menurut definisi Sun, Java adalah nama untuk sekumpulan teknologi untuk membuat dan menjalankan perangkat lunak pada computer standalone ataupun pada lingkungan jaringan. Kita lebih menyukai Java sebagai sebuah teknologi disbanding hanya sebuah bahasa pemrograman, karena Java lebih lengkap karena Java lebih lengkap dibanding sebuah bahasa pemrograman konvensional. Teknologi Java memiliki tiga komponen penting, yaitu: Programming-language specification, Application-programming interface, dan Virtual-machine specification JDK (Java Development Kit). Java Development Kit (JDK) adalah Sun Microsystems produk ditujukan untuk pengembang Java. Sejak diperkenalkannya Java, telah jauh SDK Java yang paling banyak digunakan. Pada tanggal 17 November 2006, Sun mengumumkan bahwa akan dirilis di bawah GNU General Public License (GPL), sehingga membuat perangkat lunak bebas. Hal ini terjadi sebagian besar pada tanggal 8 Mei 2007. Sun kontribusi kode sumber untuk JDKOpen JRL (Java Research License) JRL (JAVA RESEARCH LICENSE) adalah lisensi yang diciptakan khusus untuk universitas dan peneliti yang ingin menggunakan teknologi Java sebagai subyek pembelajaran dan penelitian. itu ditulis untuk menyederhanakan dan bersantai persyaratan bagian yang ada "penelitian" dari SCSL saat ini. NetBeans mengacu pada kedua kerangka platform untuk aplikasi desktop Java, dan sebuah lingkungan pengembangan terpadu (IDE) untuk pengembangan dengan Java, JavaScript, PHP, Python, Ruby, Groovy, C, C + +, Scala, Clojure, dan lain-lain. NetBeans IDE ditulis dalam Java dan berjalan di mana-mana di mana JVM yang diinstal, termasuk Windows, Mac OS, Linux, dan Solaris. Sebuah JDK diperlukan untuk pengembangan fungsionalitas Jawa, tetapi tidak diperlukan untuk pembangunan di bahasa pemrograman lain. Platform NetBeans memungkinkan aplikasi untuk dikembangkan dari satu set komponen perangkat lunak moduler yang disebut modul. Aplikasi berbasis platform NetBeans (termasuk IDE NetBeans) dapat diperpanjang oleh pengembang pihak ketiga.

2.9       Navigasi
            Terdapat 2 (dua) jenis navigasi yang sering digunakan yaitu navigasi horizontal dan navigasi vertical. Navigasi horizontal adalah navigasi yang bergeser mendatar sedangkan navigasi vertical adalah navigasi yang penggeserannya secara bertingkat. Struktur navigasi adalah struktur jalur disuatu program. Menentukan suatu struktur navigasi merupakan suatu hal yang sebaiknya dilakukan sebelum membuat web page, ada 4 (empat) macam bentuk dasar dari struktur navigasi yang bisa digunakan dalam proses pembuatan web page, yaitu :

1.         Navigasi Linier
            Navigasi linier merupakan struktur yang hanya mempunya satu rangkaian cerita berurut, struktur ini menampilkan satu demi satu tampilan secara berurut menurut aturannya dan dapat dilihat seperti gambar dibawah ini :
 




Gambar 2.1 Struktur Navigasi Linie

2.         Navigasi Non Linier
            Struktur navigasi ini merupakan pengembangan dari struktur navigasi linier. Pada struktur ini dimungkinkan adanya percabangan. Percabangan yang dibuat berbeda dengan percabangan pada struktur hirarki, karena tiap tampilan memiliki kedudukan yang sama, tidak hanya adanya master page dan slave page.

           


 



Gambar 2.2 Struktur Navigasi Non Linier

3.         Navigasi Hirarki
            Struktur navigasi hirarki (bercabang) merupakan suatu cabang yang mengandalkan percabangan untuk menampilkan data berdasarkan kriteria itu. Tampilan pada menu utama disebut master page, menu utama ini memiliki percabangan yang dinamakan slave page (halaman pendukung).
 








Gambar 2.3 Struktur Navigasi Hirarki

4.         Navigasi Campuran
            Struktur ini merupakan gabungan dari struktur sebelumnya dan juga disebut dengan struktur navigasi bebas, maksudnya adalah jika suatu tampilan membutuhkan percabangan maka dibuatkan percabangan.

 






Gambar 2.3 Struktur Navigasi Campuran