BAB II DASAR TEORI 2.1. TELEPON SELULER 2.1.1. Definisi Telepon Seluler Telepon Seluler atau yang biasa kita kenal dengan sebutan Phonsel/HP merupakan gabungan dari Teknologi Radio yang dikawinkan dengan Teknologi Komunikasi Telepon. Telepon pertama kali ditemukan dan diciptakan oleh Alexander Graham Bell pada tahun 1876. Sedangkan komunikasi tanpa kabel (wireless) ditemukan oleh Nikolai Tesla pada tahun 1880 dan diperkenalkan oleh Guglielmo Marconi. Akar dari perkembangan digital wireless dan seluler dimulai sejak 1940 saat teknologi telepon mobile secara komersial diperkenalkan. Apabila dibandingkan
dengan
perkembangan
sekarang
yang
begitu
pesat,
sebenarnya teknologi ini mengalami hambatan dalam perkembangan kurang lebih selama 60 tahun. Hal ini di karenakan perkembangan teknologi yang murah seperti transistor atau semi konduktor belum dikembangkan dengan baik. Setelah di temukannya transistor maka di mungkinkan perkembangan teknologi menjadi lebih pesat. 2.1.2. Penggunaan dan Fungsi Telepon Seluler Salah satu dari perkembangan teknologi. Dengan kecanggihan teknologi saat ini, fungsi handphone tidak hanya sebagai alat komunikasi biasa, tetapi manusia juga dapat mengakses Internet, SMS, berfoto dan juga saling mengirim data. Dampak yang ditimbulkan dari handpone mungkin tidak kita sadari sama sekali. Selain memudahkan dalam berkomunikasi
13
14
sebagai dampak positif yang manusia dapatkan, terdapat pula dampak negatif
yang
manusia
dapatkan
sebagai
akibat
menggunakan
handphone atau telepon genggam ini. Handphone pada saat ini tidak hanya digunakan oleh kalangan dewasa saja. Sekarang anak-anak pun sudah banyak yang memiliki handphone dengan kecanggihan yang tidak kalah dengan handphone orang dewasa. Sehingga dampaknya terjadi tidak hanya pada orang dewasa tetapi juga pada anak-anak. 2.1.3. Perkembangan Telepon Seluler Sekarang ini juga menjadi menarik untuk disimak karena konvergensi teknologi yang sekarang terjadi mengisyaratkan kita bahwa kemajuan teknologi komunikasi informasi sekarang ini tidak memiliki batas sama sekali. Sulit bagi kita sekarang ini membedakan mana masuk kategori ponsel, kategori komputer, kategori pemutar musik digital, maupun kategori kamera digital atau video digital.Tampaknya sudah tidak ada lagi batasan yang jelas antara berbagai teknologi yang tersedia sekarang ini di pasaran yang semuanya menjadi sebuah kesatuan dan berbagai fungsi terkumpul dalam
sebuah
perangkat,
Jika
dibandingkan
dengan
jaman
dulu
perkembangan teknologi handphone tidak berkembang pesat seperti sekarang ini, dapat di lihat dari model handphone jaman dulu disainnya sangat sederhana dan lebih cenderung simple, tidak seperti jaman sekarang, model handphone banyak yang berbentuk unik dan besar.
15
Jaman dulu layar handphone hanya bisa 1 warna atau sedikit. Ringtone nya masih polyphonic, Belum bisa mengunakan lagu sebagai nada sambung. Dan perkembangan
yang semakin maju Pada industri
phonsel, dapat di lihat fenomena terlihat dengan semakin banyaknya perangkat phonsel yang penuh dengan berbagai ragam kemampuan multimedia, dan bahkan pada model-model tertentu sudah bisa menjadi fungsi komputer dengan kecepatan komputasi yang setara ketika komputer pertama
kali
digunakan
secara
masal
oleh
konsumen. di
antara
perkembangan kedua teknologi ini adalah persoalan didisainsain. Rancangan disain ponsel sekarang ini beribu macam, dari yang sederhana sebagai sebuah ponsel belaka sampai tercanggih. Contohnya saja untuk handphone jaman sekarang, banyak yang sudah dilengkapi oleh kecanggihan teknoogi seperti MMS, 3G, GPRS, ringtone juga semakin canggih (bisa mengunakan MP3 sebagai ringtone), warna untuk layar semakin banyak, dan untuk sekarang ini nada sambung handphone bisa mengunakan sesuai dengan yang kita inginkan.
16
2.2. JARINGAN SELULER 2.2.1. 1G (1st Generation) a. NMT (Nordic Mobile Telephone) Nordic Mobile Telephone atau disingkat NMT adalah salah satu jenis sistem telpon seluler yang beroperasi mulai tahun 1981. Ada 2 macam NMT system , yaitu systems NMT 450 yang berkapasitas rendah dan NMT 900 yang berkapasitas tinggi . The Nordic mobile telephone (NMT)
system
dikembangkan
oleh
the
telecommunications
administrations of Sweden, Norwegia , Finlandia, dan Denmark untuk menciptakan compatible mobile telephone system di negara Nordic. pertama commercial NMT 450 cellular system tersedia pada tahun 1981. karena kesuksesan NMT 450 system dan terbatasnya kapasitas dari original system design, the NMT 900 system version available. beberapa dari negeri menggunakan frequency bands yang berbeda atau mengurangi jumlah channels. b. AMPS (Advanced Mobile Phone System) Advanced Mobile Phone Service (AMPS) adalah sistem analog cellular yang pertama digunakan di amerika serikat. system ini masih dipergunakan secara luas sampai dengan tahun 1997, AMPS systems digunakan di lebih dari 72 negara . AMPS system terus terlibat untuk mengijinkan features yang lebih canggih seperti betambahnya waktu standby time, yang berpita pendek radio channels, dan anti-fraud authentication procedures.
17
2.2.2. 2G (2nd Generation) a.
GSM (Global System for Mobile Communications) GSM mulanya singkatan dari Groupe Spécial Mobile, adalah sebuah teknologi komunikasi selular yang bersifat digital. Teknologi GSM banyak
diterapkan
genggam.
pada komunikasi
Teknologi
pengiriman sinyal yang
ini
bergerak,
khususnya telepon
memanfaatkan gelombang
dibagi
berdasarkan
waktu,
mikro
dan
sehingga
sinyal informasi yang dikirim akan sampai pada tujuan. GSM dijadikan standar global untuk komunikasi
selular
sekaligus
sebagai
teknologi selular yang paling banyak digunakan orang di seluruh dunia. b.
iDEN iDEN merupakan teknologi yang hanya digunakan di perangkat dengan merk tertentu (proprietary technology FBR). Teknologi ini merupakan milik perusahaan teknologi komunikasi terbesar di Amerika, Motorola, yang kemudian dipopulerkan oleh perusahaan Nextel. iDEN berbasis teknologi TDMA dengan arsitektur GSM yang bekerja pada frekuensi 800 MHz. Umumnya digunakan untuk aplikasi Private Mobile Radio (PMR) dan “Push-to-Talk”.
18
c.
D-AMPS Digital AMPS (Advanced Mobile Phone Service) dikenal juga dengan sebutan IS-45B (IS=Interim Standart), dimana kanal voice-nya sudah menggunakan teknologi digital dengan menggunakan TDMA (Time Division Multiple Access), tetapi kanal signaling-nya masih analog. Dengan TDMA, setiap kanal dibagi-bagi dalam time slot – time slot yang dapat digunakan secara bersama-sama oleh semua user. Sehingga utilisasi dapat ditingkatkan dan kapasitas juga meningkat.
d.
CdmaOne CDMAone berbeda dengan teknologi 2G lainnya karena teknologi ini berbasis Code Division Multiple Access (CDMA). Teknologi ini meningkatkan kapasitas sesi peneleponan dengan menggunakan sebuah metode pengkodean yang unik untuk setiap kanal frekuensi yang digunakannya. Dengan adanya sistem pengkodean ini, maka lalu-lintas dan alokasi waktu masing-masing sesi dapat diatur. Frekuensi yang digunakan pada teknologi ini adalah 800 MHz. Namun, terdapat varian lain yang berada di frekuensi 1900 MHz.
e.
PDC Personl Digital Cellular memiliki cara kerja yang relatif sama dengan TDMA. Perbedaannya adalah area implementasinya. TDMA lebih banyak digunakan di Amerika Serikat, sedangkan PDC banyak diimplementasikan di Jepang.
19
2.2.3. 2.5G (2.5 Generation) a.
GPRS (General Packet Radio Service) Merupakan suatu teknologi yang memungkinkan pengiriman dan penerimaan data lebih
cepat
dibandingkan
dengan
penggunaan
teknologi Circuit Switch Data atau CSD. Penggabungan layanan telepon seluler dengan GPRS menghasilkan generasi baru yang disebut 2.5G. Sistem GPRS dapat digunakan untuk transfer data (dalam bentuk paket data) yang berkaitan dengan e-mail, data gambar (MMS), Wireless Application Protocol (WAP), dan World Wide Web (WWW). b.
CDMA2000 1X Code division multiple access (CDMA) adalah sebuah bentuk pemultipleksan (bukan sebuah skema pemodulasian) dan sebuah metode akses secara bersama yang membagi kanal tidak berdasarkan waktu (seperti pada TDMA) atau frekuensi (seperti pada FDMA), namun dengan cara mengkodekan data dengan sebuah kode khusus yang diasosiasikan dengan tiap kanal yang ada dan menggunakan sifatsifat interferensi konstruktif dari kode-kode khusus itu untuk melakukan pemultipleksan.
20
2.2.4. 2.75G (2.75 Generation) EDGE (Enhanced Data Rates for GSM Evolution) EDGE atau Enhanced Data rates for GSME Evolution adalah teknologi evolusi dari GSM dan IS-136. Tujuan pengembangan teknologi baru
ini
adalah
untuk
meningkatkan
kecepatan
transmisi
data,
efesiensi spektrum, dan memungkinkannya penggunaan aplikasi-aplikasi baru serta meningkatkan kapasitas. 2.2.5. 3G (3rd Generation Technology) UMTS (Universal Mobile Telecommunications System) adalah salah satu teknologi telepon genggam 3G (generasi ke-3). Sekarang ini bentuk yang paling banyak digunakan adalah W-CDMA yang distandarisasi oleh 3GPP. a.
W-CDMA (Wideband Code-Division Multiple Access) Wideband
Code-Division
Multiple
Access atau
biasa
ditulis Wideband CDMA atau W-CDMA, merupakan teknologi generasi ketiga (3G) untuk GSM, biasa disebut juga UMTS (Universal Mobile Telecommunication System). Teknologi ini tidak kompatibel dengan CDMA2000 atau sering disebut juga dengan CDMA saja. Kecepatan WCDMA bisa mencapai 384 kbps dan dimasa akan datang akan meningkat sampai mungkin sekitar 10Mbps.
21
b.
TD-SCDMA Merupakan teknologi generasi ketiga ini masih dikembangkan China oleh Chinese Academy of Telecommunications Technology (CATT).
c.
CDMA2000 1xEV-DO (Evolution-Data Optimized) EVDO CDMA2000, merupakan sebuah standar pada wireless broadband berkecepatan tinggi. EVDO satu dari dua macam standar utama nirkabel Generasi ke-3 atau 3G. adapun standar yang lainnya adalah W-CDMA.
2.2.6. 3.5G (3.5 Generation) HSPA (High-Speed Packet Access) Terdiri Dari : a.
HSDPA (High-Speed Downlink Packet Access Download) HSDPA merupakan protokol tambahan pada sistem WCDMA yang mampu mentransmisikan data berkecepatan tinggi. HSDPA fase pertama berkapasitas 4,1 Mbps. Kemudian menyusul fase 2 berkapasitas 11 Mbps dan kapsitas maksimal downlink peak data rate hingga mencapai 14 Mbit/s.
b.
HSUPA (High-Speed Uplink Packet Access Upload) Merupakan kecepatan
standar
HSPA
dengan
kemampuan
dari
sisi
transfer uplinknya, dimana HSUP Adapat mencapai
kecepatan uplink
secara
teori
sampai
kecepatan 5.76
Mbps,
tetapi HSUPA ini tidak implentasikan dan handset-nya tidak dibuat.
22
2.2.7. Transisi dari 3.5G ke 4G 1. 3.75G (HSPA+) a.
Mobile WiMAX (Worldwide Interoperability for Microwave Access) WiMAX mempunyai kemampuan dalam transfer data jarak jauh secara wireless, akses point to point untuk dukungan penuh akses mobile phone, sehingga dapat menjadi alternatif dari jaringan broadband dengan kabel dan DSL.
b.
LTE (Long Term Evolution) LTE diklaim sebagai jaringan nirkabel dengan pertumbuhan tercepat. Karena LTE mendapat banyak dukungan dari perusahaan penyedia alat dan solusi telekomunikasi, operator seluler, serta pembuat perangkat mobile.
c.
CDMA2000 1xEV-DO EVDO
CDMA2000,
merupakan
sebuah
standar
pada wireless
broadband berkecepatan tinggi. EVDO satu dari dua macam standar utama nirkabel Generasi ke-3 atau 3G. adapun standar yang lainnya adalah W-CDMA. 2.2.8. 4G (4th Generation Technology) a.
LTE Advanced LTE-Advanced sendiri adalah pengembangan LTE dengan kecepatan yang lebih tinggi. Standardisasi dilakukan sebagai bagian dari 3GPP Rilis 10, dengan peningkatan lebih lanjut di Release 11 dan seterusnya.
b.
WiMAX-Advanced (IEEE 802.16m) Yg dimaksudkan teknologi 4G adalah Wimax (Advanced) dan LTE (Advanced), keduanya sudah real jalan di negara-negara maju.
23
2.3. Komunikasi Seluler 2.3.1. Definisi Seluler Cellular dalam Bahasa Inggris untuk selular. Selular artinya adalah sistim komunikasi jarak jauh tanpa kabel, selular adalah bentuk komunikasi modern yang ditunjukan untuk menggantikan telepon rumah yang masih menggunakan kabel. Telepon Genggam sering disebut handphoone (disingkat HP) atau disebut pula sebagai telepon seluler (disingkat ponsel) adalah prangkat telekomunikasi elektronik yang mempunyai kemampuan dasar yang sama dengan telepon fixed line konvensional, namun dapat dibawa kemana-mana (portable, mobile) dan tidak perlu disambungkan dengan jaringan telepon menggunakan kabel (nirkabel; wireless). Saat ini Indonesia mempunyai dua jaringan telepon nirkabel yaitu sistem GSM (Global System For Mobile Telecommunications) dan sistem CDMA (Code Division Multiple Access). Selain berfungsi untuk melakukan dan menerima panggilan telepon, ponsel umumnya juga mempunyai fungsi pengiriman dan penerimaan pesan singkat (Short Message Service, SMS). Mengikuti perkembangan teknologi digital, kini ponsel juga dilengkapi dengan berbagai pilihan fitur, seprti bisa menangkap siaran radio dan televisi, perangkat lunak pemutar audio (mp3) dan video (MPEG4), kamera digital, game, dan layanan internet (WAP, GPRS, 3G) ada pula penyedia jasa telpon genggam di beberapa negara yang menyediakan layanan generasi ketiga (3G) dengan menambahkan jasa videphone, sebagai alat pembayaran, maupun untuk televisi online di telepon genggam. Sekarang, telepon genggam manjadi gadget yang
24
mulitifungsi. Selain fitur-fitur tersebut, ponsel sekarang sudah ditanamkan fitur komputer. Jadi di ponsel tersebut, orang bisa mengubah fungsi ponsel tersebut menjadi mini Komputer. Di dunia bisnis, fitur ini sangat membantu bagi para pebisnis untuk melakukan semua pekerjaan di satu tempat dan membuat pekerjaan tersebut diselesaiakn dalam waktu yang singkat. Di bawah ini adalah gambar dari Arsitektur Komunikasi Seluler pada Jaringan GSM.
Gambar 2.1. Arsitektur GSM
Gambar 2.2. Base Station System
25
Gambar 2.3. Penyebaran Cell-Cell pada jaringan Seluler
Gambar 2.4. Arsitektur Komuniasi Seluler GSM
26
2.4. PEMROGRAMAN KOMPUTER Pemrograman Komputer adalah serangkaian instruksi yang ditulis dengan menggunakan suatu bahasa program yang dipilih untuk memberikan perintah kepada komputer tentang apa yang harus dikerjakannya. Kita semua sudah mengerti bahwa komputer tidak lain dari perangkat elektronik yang bekerja karena adanya arus listrik yang dialirkan ke dalam berbagai komponennya. Pertanyaannya adalah bagaimana komputer mengerti program yang diberikan kepadanya? sebenarnya komputer tidak mengerti program yang diberikan padanya kecuali pulsa biner yang memicu rangkaian elektronik untuk bekerja, yang dengan demikian komputer bekerja. Karena manusia sulit untuk mengerti bahasa mesin maka diciptakanlah bahasa program komputer, di mana setiap bahasa program ini diperlengkapi dengan interpreter dan atau compiler. Interpreter adalah program yang menerjemahkan suatu program dalam bahasa tertentu menjadi suatu kode yang dekat dengan bahasa mesin seperti kode assembly atau ke kode bytecode. Hasil dari compiler kemudian dijadikan bahasa mesin oleh suatu interpreter, baik interpreter yang harus diaktifkan lebih dulu ataupun interpreter yang secara otomatis dijalankan setelah proses kompilasi selesai. Kode assembly dikategorikan sebagai bahasa tingkat rendah (low level language) karena dekat ke bahasa mesin, walaupun bias digunakan oleh pemrograman untuk membuat program tetapi bagi orang awam tidaklah mudah. Pra pakar komputer menciptakan bahasa tingkat tinggi (high level language) yang dekat ke bahasa Inggris sehingga mudah dimengerti oleh manusia. Ada berbagai macam dan kategori bahasa tingkat tinggi. Disebut bahasa klasik, seperti
27
FORTRAN, COBOL, PL/I, BASIC, Karena sudah jarang digunakan, dan ada yang disebut bahasa modern seperti C, C++, C#, Visual Basic, Delphi, Java, dsb. Karena masih digunakan hingga sekarang ini. Penulisan program komputer melewati siklus: 1. Analisis : melakukan analisis terhadap maslah yang diselesaikan dengan program; 2. Disain : melakukan disain penyelesaian, biasanya melalui alat bantu seperti flowchart atau algoritma yang tidak lain merupakan susunan langkah strategi dan logika penyelesaian; 3. Pengkodean : hasil disain diterjemahkan ke dalam bahasa program yang dipilih dan diketik ke dalam file komputer yang disebut file source; 4. Kompilasi : proses penerjemahan program (source) ke dalam kode objek yang sesuai, biasanya disertai pemeriksaan sintaksis dari program. Bila ditemukan kesalahan ketik atau kesalahan perintah maka compiler akan melaporkan kesalahan tersebut; 5. Pengujian : apabila proses kompilasi sukses maka program bias diuji-coba dengan memberikan data sesuai keprelian dan kemudain hasilnya diamati. Apabila output yang diharapkan tidak sesuai berarti ada kesalahan logika atau strategi dalam disain sehingga perlu ditinjau kembali, bahkan kadangkala harus kembali ke langkah analisis. 6. Implementasi : setelah lolos uji coba maka program dapat digunakan sesuai tujuan pembuatannya.
28
2.5. BAHASA PEMROGRAMAN JAVA 2.5.1. Pengenalan Java Java adalah nama salah satu bahasa pemrograman komputer yang berorientasi objek diciptakan oleh satu tim dari perusahaan SUN Microsystem, perusahaan workstation UNIX (Sparc) yang cukup terkenal. Java diciptakan berdasarkan bahasa C++, dengan tujuan platform independent (dapat dijalankan pada berbagai jenis hardware tanpa kompilasi ulang), dengan slogan Write Once Run Anywhere (WORA). Dibandingkan bahasa C++, JAVA pada hakikatnya lebih sederhana dan memakai objek secara murni. Bahasa JAVA tidak muncul secara tiba-tiba atau karena penemuan aksidental. Asal usul JAVA dimulai tahun 1991 ketika Sun MicroSystem melakukan penelitian terhadap berbagai produk elektronika. James Gosling (Kepala proyek penelitian) beserta Patrick Naughton ditugaskan untuk merancang perangkat lunak aplikasi yang independen, tidak bergantung jenis prangkat keras, agar bisa dipakai pada berbagai peralatan elektronik itu, James Gosling kemudian memakai bahasa C++ untuk menulis beberapa aplikasi untuk peralatan mikro, namun ternyata di mengalami banyak kesulitan. Setiap kali sebuah peralatan mikro menggunakan jenis microchip yang berbeda, program yang digunakannya harus dikompilasi ulang. Berdasarkan hal itu kemudian timbul ide dari James Gosling untuk menciptakan sebuah bahasa baru, yang di tulis berdasarkan C++ namun dengan beberapa perbaikan. Bahasa ini kemudian disebut OAK (nama pohon yang terlihat dari jendela ruangan James Gosling), yang
29
digunakannya untuk membuat prangkat lunak cerdas bagi perlalatan elektronika buatan Sun MicroSystem. 2.5.2. Karakteristik Bahasa Pemrograman Menurut definisi yang diberikan oleh Sun MicroSystem, JAVA adalah bahasa pemrograman yang simple. Object-oriented, distributed, interpreted,
robus,
secure,
architecture
neutral,
portable,
high-
performance, multithreaded, and dynamic. Java bahasa yang a. simple : Rancangan bahasa java di buat sedemikian rupa sehingga dengan cepat dapat dikenali dan dipahami oleh pemrogram pemula sekalipun karena mirip dengan bahasa C/C++ dan yang kedua lebih sederhana dari C/C++ dalam beberapa hal mengingat berbagai hal yang sulit pada C/C++ sudah tidak ada pada java, misalnya pemakaian pointer. b. object-oriented : Konsep objek diterapkan pada pembuatan program Java, bahkan java menggunakan konsep objek secara murni sehingga tidak mungkin seseorang membuat program Java tanpa mendefinisikan kelas dan menggunakan objek. c. Distributed
: Bahasa Java dirancang sedemikian rupa sehingga
mendukung pembuatan aplikasi dalam jaringan komputer. Java menyediakan beberapa kelas objek untuk mendukung aplikasi jaringan yang dihimpun dalam paket java.net. d. Robust : Rancangan Java dibuat sedemikian rupa hingga mengurangi kemungkinan menjadi beku (freeze) ketika dijalankan.
30
e. Secure : Secara otomatis Java menerapkan pengamanan terhadap aplikasi sehingga mengurangi kemungkinan terjadinya serangan dari pengguna jaringan. f. Architecture neutral : Program Java yang telah dikompilasi dapat dijalankan pada berbagai mesin dan tidak hanya bergantung pada suatu atsitektur komputer saja. g. Portable : Program Java sangat mudah dipindahkan dari satu mesin ke mesin lain tanpa harus dikompilasi ulang. h. High-performance : pada hakikatnya program C yang telah dikompilasi berjalan jauh lebih cepat dari Java, karena hasil kompilasi C adalah bahas mesin dari komputer yang dipakai untuk mengompilasi, namun hasil kompilasi ini belum tentu bias jalan pada komputer yang berbeda arsitektur. i. Multithreaded: Java dirancang untuk menangani berbagai aplikasi yang berjalan secara bersamaan, misalnya memainkan lagu, sambil melakukan download, dan pengguna sedang melakukan scrolling pada window yang diamatinya. Kejadian in yang disebut multithreaded. j. Dynamic: Bahasa Java dirancang unttuk beradaptasi dengan lingkungan yang dapat berubah dengan cepat. Java dapat memanggil berbagai kelas object pada saat dibutuhkan, walaupun harus melalui jaringan.
31
2.5.3. Struktur Program Aplikasi Program dalam bahasa Java bias merupakan program aplikasi, yaitu program yang dijalanakan hanya pada satu komputer pada satu saat sebagian program stand-alon, atau bias berupa program applet, yaitu program yang bias ditampilkan pada halaman Web, dipunggah ke dalam suatu web-browser. Agar bias menulis program JAVA diperlukan : a. Sebuah komputer. b. Program editor teks, seperti NotePad atau DOS Edit. c. Atau program Java Editor, serperti JCreator, NetBeans, atau Eclipse. d. Prangkat lunak JAVA SDK (Software Development Kit), Standard Edition atau J2SE, bias dipunggah dari situs Sun MicroSystem, http://www.java.sun.com/j2se/ (1 Oktober 2012) Setiap jenis JAVA SDK memuat platform Java yang terdiri atas dua bagian utama, yaitu: a. JVM (Java Virtual Machine) untuk melakukan interprestasi terhadap file *.class b. Java API (Application Program Interface) yang memuat berbagai fasilitas atau pustaka fungsi untuk kepreluan para pemrograman ketika menyusun sebuah program.
32
2.6. Android Mobile 2.6.1. Hadirnya Android Android adalah sebuah system operasi untuk prangkat mobile yang menyertakan middleware (virtual machine) dari sejumlah aplikasi utama. Android merupakan modifikasi dan kernel Linux. Pada awalnya system operasi ini dikembangkan oleh sebuah perusahaan bernama Android, Inc. dari sinilah awal mula nama Android muncul. Android, Inc. adalah sebuah perusahaan start-up kecil yang berlokasi di Palo Alto, California, Amerika Serikat yang didirikan oleh Andy Rubin bersama Rich Miner, Nic Sears, dan Chris White. Pada bulan Juli 2005, perusahaan tersebut diakuisisi oleh Google dan para pendirinya bergabung ke Google. Andy Rubin sendiri kemudian diangkat menjadi Wakil Presiden divisi Mobile dari Google. Tujuan pembuatan sistem operasi ini adalah untuk menyediakan platform yang terbuka, yang memudahkan orang mengakses internet menggunakan telepon seluler. Android juga dirancang untuk memudahkan pengembang aplikasi membuat aplikasi dengan batasan yang yang minim sehingga kreativitas pengembang menjadi lebih berkembang. Setelah tujuh bulan hanya terdapat satu perangkat Android di pasaran, akhirnya pada bulan Mei 2009 HTC mengeluarkan prangkat Android lain, yaitu HTC Magic, yang dipaketkan dengan sistem operasi Android versi 1.5 pada semester kedua tahun 2009, memulailah banyak perangkat-perangkat android yang dikeluarkan oleh HTC, Motorola, dan Samsung. Android pun semakin dikenal dan semakin memperkuat posisinya di pasaran. Hal
33
tersebut berhasil karena adanya banyak vendor yang mengadopsi Android dan ketersediaan berbagai aplikasi yang menarik. Hal itu ditambah dengan keberhasilan kampanye pemasaran Droid Does dari Verizone Wireless yang menyoroti keunggulan-keunggulan
Android yang tidak dimiliki oleh
iPhone. Dengan cepat Android mulai mengambil pangsa pasar dari sistem operasi telepon seluler lain bahkan yang sudah menguasai pasaran. 2.6.2. Arsitektur Sistem Operasi Android Ada 5 blok besar yang membangun Android, masing-masing memiliki fungsi dan peranan setiap bagian tersebut. a. Linux Kernel Pada Bagian paling bawah dari Android adalah Linux Kernel, Android menggunakan modifikasi dari Linux Kernel versi 2.6. Bagian ini bertanggung jawab untuk mengelola dan berkomunisasi dengan perangkat keras di mana android berjalan. Pemilihan Linux Kernel sebagain inti dari Android adalah karena dukungan dan kestabilannya terhadap berbagai macam komponen perangkat keras. b. Liberaries Liberaries merupakan kumpulan kode yang dapat digunakan oleh komponen/program lain. Pada bagian ini kodenya ditulis menggunakan bahasa pemrograman C/C++. Fungsi masing-masing komponen di libraries ini adalah sebagai berikut: a. Surface Manager; b. Open GL; c. SGL;
34
d. Media Framework; e. Free Type; f. SSL; g. SQLite; h. Webkit ; i. libc .
c. Android Runtime Pada bagian inilah aplikasi Android berjalan. Inilah bagain middleware yang disebutkan pada definisi Android di awal. Aplikasi Android ditulis menggunakan bahasa Java, dan untuk menjalankannya diperlukan sebuah virtual machine yang akan menerjemahkan instruksisinstruksi program Java tersebut ke intruksi yang dimengerti oleh sistem operasi. Namun berbeda dengan platform lainnya, Android tidak menggunakan Java Virtual Machine. Dalvik Virtual Machine adalah sebuah virtual machine yang dioptimasi untuk perangkat yang memiliki memori kecil, sumber tenaga terbatas, dan kemampuan prosesor yang kecil. d. Application Framework Bagian ini adalah framework atau prangkat yang dapat digunakan oleh pengembang aplikasi dalam membuat aplikasi Android. Bagian ini menyertakan program-program yang mengelola fungsi-fungsi dasar seperti informasi lokasi, fungsi telepon, pengelolaan perpindahan antara program atau proses, dan sebagainya. Pengembangan aplikasi dapat
35
memiliki akses framework yang sama dengan yang dapat diakses oleh aplikasi-aplikasi utama dari Android (phone dialer, buku telepon, SMS, e-mail, kalender, dan sebagainya). Disini terlihat keinginan dari Android untuk menjadi platform yang terbuka, sehingga memungkinkan pengembang aplikasi untuk lebih kreatif menciptakan aplikasi yang menarik dan inovatif. e. Applications Pada bagian ini terdapat aplikasi-aplikasi yang dapat digunakan oleh pengguna perangkat Android. Selain aplikasi inti seperti yang ada di diagram arsitektur, aplikasi-aplikasi tambahan yang dipasang sendiri oleh pengguna akan menempati bagian ini dan memiliki hak akses yang sama terhadap Application Framework. Apabila diperlukan, pengguna ataupun vendor dapat menggantikan aplikasi inti yang ada dengan aplikasi buatan sendiri yang memiliki fungsionalitas yang sama. Hal ini membuat kustomisasi sistem operasi Android jauh lebih bebas dibandingkan system operasi perangkat mobile lainnya. 2.6.3. Versi Sistem Operasi Android a. Android Beta Pertama kali dirilis pada 5 November 2007, kemudian pada 12 November 2007 Software Development Kit (SDK) dirilis oleh Google. b. Android 1.0 (Astro) Pertama kali dirilis pada 23 Spetember 2008. Sebenarnya Android versi pertama ini akan dinamai dengan nama "Astro" tapi karena alasan hak cipta dan trademark nama"Astro" tidak jadi disematkan pada versi pertama dari
36
OS Android ini. HTC Dream adalah ponsel pertama yang menggunakan OS ini. Berikut penampakan HTC Dream. Pada android versi pertama ini sudah mulai diperkenalkan Android Market, tempat untuk mendownload berbagai macam aplikasi dan update untuk Android. Kemudian terdapat fitur syncronisasi dengan berbagai layanan Google lainnya seperti Google Contact, Calender, Maps, Talk, dan lainnya. c. Android 1.1 (Bender) Pertama kali dirilis pada 9 Februari 2009. Versi Android kedua ini juga mengalami masalah penamaan yang sama dengan versi pertamanya. Pada awalnya Android ini akan diberi nama "Bender" akan tetapi karena alasan melanggar trademark, nama "Bender" tidak jadi disematkan pada versi Android ini. Awalnya versi OS Android ini dirilis untuk perangkat T-Mobile G1 saja. Versi ini merupakan update untuk memperbaiki beberapa bugs, mengganti API dan menambahkan beberapa fitur. d. Android 1.5 Cupcake Pertama kali dirilis pada 30 April 2009. Nah, mulai versi Android ini penamaan menggunakan nama makan pencuci mulut (dessert) mulai digunakan, karena ini merupakan versi yang ketiga maka penamaan diawali dengan huruf "C" dan jadilah "Cupcake" menjadi nama resmi dari versi OS Android ketiga ini. OS ini berbasiskan pada kernel Linux 2.6.27 dan menambahkan beberapa update serta UI baru dari versi Android sebelumnya. Mulai terdapat "widget" yang dapat dibesar kecilkan. Kemudian ditambah kemampuan untuk meng-upload video dan gambar ke Youtube dan Picasa.
37
e. Android 1.6 Donut Dirilis pertama kali pada 15 September 2009. Terdapat peningkatan pada fitur pencarian dan UI yang lebih user friendly. Pada versi ini juga sudah mendukung teknologi CDMA/EVDO, 802.1x, VPNs. Kemudian support layar dengan resolusi WVGA.
f. Android 2.0/2.1 Enclair Dirilis pertama kali pada 9 Desember 2009. Terjadi penambahan fitur untuk 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. Beberapa versi updatenya antara Android v.2.0 kemudian v2.0.2 dan terakhir v.2.1. g. Android 2.2 Frozen Yoghurt (Froyo) Dirilis pertamakali pada 20 Mei 2010 pada smartphone Google Nexus One. Pada versi ini sudah support terhadap Adobe Flash Player 10.1. Peningkatan pada kecepatan membuka dan menutup aplikasi, serta penggunaan SD Card sebagai tempat penyimpanan aplikasi. Ketika Android Froyo hadir mulai muncul banyak diskusi yang membahas mengenai persaingan antara Android dengan iOS yang akan semakin ketat di masa yang akan datang. Beberapa versi update yang dirilis antara lain Android v.2.2.1 hingga v.2.2.3.
38
h. Android 2.3 Gingerbread Pertama kali diperkenalkan pada 6 Desember 2010. Terjadi banyak peningkatan pada versi Android yang satu ini dibandingkan dengan versi sebelumnya. Dirancang untuk memaksimalakan kemampuan aplikasi dan game. Serta mulai digunakannya Near Field Communication (NFC). Perbaikan terhadap dukungan layar resolusi WXGA dan diatasnya. Beberapa versi update yang dirilis antara lain v.2.3.3 hingga v.2.3.7. Sampai saat ini Android Gingerbread merupakan versi Android yang memiliki pengguna terbanyak dibandingkan dengan seri Android lainnya, yaitu mencapai 65% dari seluruh versi Android yang dirilis. i. Android 3.0/3.1 Honeycomb Pertama kali diperkenalkan pada 22 Februari 2011 dan Motorola Xoom adalah yang pertama kali menggunakannya. Android versi ini merupakan OS yang didisain khusus untuk pengoptimalan pengunaan pada tablet PC. j. Android 4.0 Ice Cream Sandwich Sampai tulisan ini ditulis ICS merupakan versi Android yang paling anyar. Pertama kali dirilis pada 19 Oktober 2011. Smartphone yang pertama kali mengunakan OS Android ini adalah Samsung Galaxy Nexus. Secara teori semua perangkat seluler yang menggunakan versi Android sebelumnya, Gingerbread, dapat di-update ke Android Ice Cream Sandwich. Namun sayangnnya sampai saat ini kebanyak smartphone yang menggunakan Android ICS merupakan smartphone kelas high-end yang dijual dengan harga cukup mahal.
39
k. Android 4.1 Jelly Bean Android kembali merilis OS terbarunya yang diberi nama Ice Cream Sandwich,
memang
belum
lama
dirilis
dan
masih
sangat
sedikit handphone yang sudah mencicipinya, namun tidak ada salahnya bila kita membahas Android Jelly Bean versi yang digunakan Google untuk versi Android 4.1 adalah “Jelly Bean“. Indikasi paling baru ialah kehadiran mangkok berisi hidangan jelly bean di stand Google pada ajang MWC. 2.7. PEMROGRAMAN ANDROID 2.7.1. Bahasa Pemrograman Android Hampir setiap orang di kota-kota besar Indonesia, memiliki handphone atau smartphone yang digunakan untuk berkomunikasi, bahkan memiliki lebih dari satu, berapa ribu smartphone-kah yang ada di dunia ini? Peluang inilah yang dapat kita rambah yaitu pemrograman mobile phone. Banyak sekali platform mobile yang dapat kita coba, diantaranya J2ME, QT Mobile, dan Android. Salah satunya yang sedang booming adalah Android Mobile. Android merupakan sistem operasi berbasis linux yang bahasa pemrograman aplikasinya dapat kita buat menggunakan java. Dengan pengetahuan seputar java yang telah mencukupi, anda dapat membuat aplikasi berbasis android. 2.7.2. Layout Android Layout adalah rancangan antarmuka (user interface) pada sebuah Activity. Pada program HelloWorld sebelumnya, kita membuat layout antarmuka aplikasi melalui kode program. Pendekatan ini tidak dianjurkan, apalagi jika aplikasi yang dibuat tergolong besar, karena perubahan layout
40
sedikit saja sangat rumit diterapkan melalui kode. Oleh karena itu, Android meneydiakan alternatif membuat layout dengan XML. Berkas layout XML secara otomatis terhubung dengan kelas View. Kelebihan membuat layout dengan XML adalah kita dapat memisahkan antara tampilan. Dengan demikian, jika kita ingin mengubah tampilan, kita tidak perlu mengganggu kode. Kegunaannya lebih terasa ketika kita ingin membuat antarmuka yang berbeda untuk orientasi layar berbeda atau untuk smartphone berbeda. 2.8. Database MySQL MySQL adalah perangkat lunak database server atau sebut saja Database Smart. Database ini semakin lama semakin populer. Dengan menggunakan database ini, data semakin aman dan berdaya guna. Database ini juga banyak dipakai pada web database sehingga data semakin terintegrasi antara database dekstop dengan database web. Untuk menggunakan database MySQL harus menginstalasinya dahulu ke komputer. Keistimewaan MySQL Sebagai server database dengan konsep database modern, MySQL memiliki keistimewaan. Beberapa keistimewaan dimiliki MySQL sebagai berikut : 1). Portability Database MySQL berfungsi dengan stabil tanpa kendala, berarti berlaku pada berbagai sistem operasi seperti Windows, Linux, FreeBSD, Mac OS X Server, Solaris, Amiga, HP-Unix, dan lain-lain.
41
2). Open Source MySQL merupakan database open source (gratis), di bawah lisensi GPL sehingga dapat memperoleh dan menggunakannya secara cuma-cuma tanpa membayar sepersen pun. 3). Multiuser MySQL merupakan database yang dapat digunakan untuk menangani beberapa user dalam waktu bersamaan tanpa mengalami masalah. Dan memungkinkan sebuah database server MySQL dapat diakses client secara bersamaan pula. 4). Performace Tuning MySQL mempunyai kecepatan yang cukup baik dalam menangani queryquery sederhana, serta mampu memproses lebih banyak SQL per-satuan waktu. 5). Column Type Database MySQL didukung dengan tipe data yang sangat kompleks, seperti signed/unsigned integer, float, double, char, varchar, text, blob, data, time, datetime, timestamp, year, set, serta enum. 6). Command dan Functions MySQL server memiliki operator dan fungsi secara penuh yang mendukung perintah SELECT dan WHERE dalam query. 7). Security Sistem Security pada MySQL mempunyai beberapa lapisan sekuritas seperti tingkatan subnetmask, hostname, dan izin akses user dengan sistem perizinan yang mendetil serta password terenkripsi.
42
8) Scalability dan Limits MySQL mempunyai kemampuan menangani database dalam skala cukup besar, dengan jumlah record lebih dari 50 juta dan 60 ribu tabel serta 5 miliar baris. Selain itu dapat menampung indeks sampai 32 indeks pada tiap tabelnya. 9). Connectivity Adanya
kemampuan
MySQL
melakukan
koneksi
dengan
client
menggunakan protokol TCP/IP, Unix socket (Unix), atau Named Pipes (NT). 10). Localization Adanya kemampuan dalam mendeteksi kesalahan (error code) pada client menggunakan lebih dari dua puluh bahasa. 11). Interface MySQL memiliki interface terhadap berbagai aplikasi dan bahasa pemograman menggunakan fungsi API (Application Programming Interface). 12). Clients dan Tools Database MySQL dilengkapi berbagai tools yang dapat digunakan untuk administrasi database. 13). Struktur Tabel MySQL memiliki struktur tabel cukup baik serta cukup fleksibel, misalnya ketika menangani alter table.