1 BAB II LANDASAN TEORI
2.1 Sistem Operasi Android Android adalah sebuah sistem operasi yang dibuat berdasarkan Linux yang dimodifikasi (Lee Meng-Wei 2011). Saat ini dikembangkan oleh google. Android didesain biasanya dibuat untuk perangkat yang memiliki antarmuka layar sentuh, seperti smartphone atau komputer tablet. Secara khusus android juga digunakan untuk game konsol, kamera digital dan perangkat elektronik lainnya. Source code android dirilis oleh google dibawah lisensi open source. Android popular dikalangan perusahaan teknologi yang menginginkan sistem operasi yang siap-jadi, berbiaya rendah dan bisa dikustomisasi untuk perangkat berteknologi tinggi. Fitur pada sistem operasi android diantaranya 1. Antar Muka. Default antar muka android dibuat berdasarkan direct manipulation, yang mana segala yang kita lakukan seperti menyapu layar, menyubit secara langsung merubah objek pada layarm dan juga dilengkapi dengan virtual keyboard. Hardware internal seperti accelerometers, gyroscopes dan proximity sensors biasa digunakan ole beberapa aplikasi yang merespon tindakan dari pengguna. Contohnya saat kita merubah orientasi layar dari portrait ke landscape atau simulasi setir mobil pada game. 2. Aplikasi Aplikasi pada android biasanya ditulis menggunakan Bahasa pemrograman Java, menggunakan Android Software Development kit (SDK). SDK ini sudah termasuk debugger, software libraries, dan emulator. Pada android kita juga melakukan instalasi aplikasi pihak ketiga, dimana kita bisa mendownloadnya melalui Google Play Store. Saat ini sudah terdapat lebih dari 50 milliar aplikasi yang ada di Google Play Store. 3. Memory Management Android merupakan perangkat yang memiliki sumber daya dari baterai. Karena itu android didesain agar mengatur penggunaan memoy supaya
http://digilib.mercubuana.ac.id/
menggunakan power seminimum mungkin. Ketika sebuah aplikasi pada android tak lagi digunakan, aplikasi tersebut bakal dimatikan penggunaan memorynya, Android mengatur ketika memory yang tersisa tinggal sedikit, sistem akan mematikan aplikasi yang statusnya jalan di background untuk sementara. Proses ini tidak terlihat oleh user.
2.1.1 Arsitektur Android Secara garis besar arstitektur android terdiri dari komponen-komponen dibawah ini : 1.
Applications dan Widgets Applications dan Widgets ini adalah layer dimana kita berhubungan dengan aplikasi saja, dimana biasanya kita download aplikasi kemudian kita lakukan instalasi dan jalankan aplikasi tersebut. Di layer terdapat aplikasi inti termasuk klien email, program SMS, kalender, peta, browser, kontak, dan lain-lain. Semua aplikasi ditulis menggunakan bahasa pemrograman Java.
2. Applications Frameworks Android adalah Open Development Platform yaitu Android menawarkan kepada pengembang atau memberi kemampuan kepada pengembang untuk membangun aplikasi yang bagus dan inovatif. Pengembang bebas untuk mengakses perangkat keras, akses informasi resources, menjalankan service background, mengatur alarm, dan menambahkan status notifications, dan sebagainya. 3. Libraries Libraries ini adalah layer dimana fitur-fitur Android berada, biasanya para pembuat aplikasi mengakses libraries untuk menjalankan aplikasinya. Berjalan di atas kernel, layer ini meliputi berbagai library C/C++ inti seperti Libc dan SSL, serta libraries lainnya.
4. Android Run Time
http://digilib.mercubuana.ac.id/
Layer yang membuat aplikasi Android dapat dijalankan dimana dalam prosesnya menggunakan Implementasi Linux. Dalvik Virtual Machine (DVM) merupakan mesin yang membentuk dasar kerangka aplikasi Android. 5. Linux Kernel. Linux Kernel adalah layer dimana inti dari system operasi android itu berada. Berisi file-file sistem yang mengatur system processing, memory, resource, drivers, dan sistem-sistem operasi android lainnya.
2.1.2 Sejarah Sistem Operasi Android Pada saat perilisan perdana Android pada tanggal 5 November 2007, Android bersama Open Handset Alliance mendukung pengembangan standar terbuka pada perangkat seluler tersebut. Di sisi lain, Google merilis kode-kode Android di bawah lisensi Apache. Sehingga terdapat dua jenis distributor sistem operasi Android yaitu yang mendapat dukungan penuh dari Google dan yang mendapat dukungan penuh dari Open Handset Distribution (OHD). Telepon selular pertama yang menggunakan sistem operasi Android adalah HTC Dream yang dirilis pada 22 Oktober 2008. Pada 9 Desember 2008, diumumkan anggota baru yang bergabung dalam program kerja Android ARM Holdings, Atheros Communication yang diproduksi oleh Asustek Computer Inc, Garmin Ltd, Softbank, Sony Ericsson, Toshiba Corp dan Vodafone Group Plc. Hingga saat ini terdapat beberapa versi dari sistem operasi Android, antara lain: a. Android versi 1.1 Dirilis pada 9 Maret 2009. Android versi ini dilengkapi dengan adanya jam, alarm, voice search, pengiriman pesan dengan Gmail dan pemberitahuan email. b. Android versi 1.5 (Cupcake) Dirilis pada Mei 2009. Terdapat pembaruan dari versi 1.1 diantaranya adalah fitur upload 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.
http://digilib.mercubuana.ac.id/
c. Android versi 1.6 (Donut) Dirilis pada September 2009. Pembaruan yang terdapat pada versi ini diantaranya adalah proses pencarian yang lebih baik, penggunaan baterai indikator dan kontrol applet VPN. Fitur lainnya adalah memungkinkan pengguna untuk memilih foto yang akan dihapus, kamera, camcorder dan galeri yang diintegrasikan, CDMA/EVDO, 802.1x, VPN, Gestures, Textto-speech engine. d. Android versi 2.1 (Éclair) Dirilis pada 3 Desember 2009. 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. e. Android versi 2.2 (Froyo) Dirilis pada 20 Mei 2010. Versi Android inilah yang sekarang banyak digunakan sebagai standar sistem operasi mereka. Terdapat perubahan yang cukup signifikan dari versi sebelumnya diantaranya adalah kerangka aplikasi memungkinkan penggunaan dan penghapusan komponen yang tersedia, Dalvik Virtual Machine (DVM) yang dioptimalkan untuk perangkat mobile, grafik di 2D dan 3D berdasarkan libraries OpenGL, SQLite, mendukung berbagai format audio dan video, GSM, bluetooth, EDGE, 3G, Wifi, kamera, Global Positioning System (GPS), kompas dan accelerometer. f. Android versi 2.3 (GingerBread) Dirilis pada 6 Desember 2010. Beberapa perbaikan fitur dari versi sebelumnya adalah SIP-based VoIP, Near Field Communications (NFC), 12 gyroscope dan sensor, multiple cameras support, mixable audio effect dan download manager. g. Android versi 3.0 (Honeycomb) Dirilis tahun 2011. Android versi ini dirancang khusus untuk tablet, sehingga terdapat perbedaan dari fitur UI (User Interface). Honeycomb sengaja dibuat untuk layar yang lebih besar dan juga dapat mendukung multiprocessor.
http://digilib.mercubuana.ac.id/
h. Android versi 4.0 (Ice Cream) Versi ini masih dalam pengembangan. Dari berbagai informasi menyebutkan bahwa versi Ice Cream merupakan gabungan antara versi Gingerbread dengan Honeycomb. Sehingga bisa digunakan untuk ponsel maupun tablet. Dan kemungkinan dirilis pada quarter ke 4 tahun 2011. i. Android versi 4.1, 4.2, 4.3 (Jelly Bean) Versi android ini diumumkan pada Google I/O 2012. Beberapa pengembangan yang ditawarkan ada pada pemberdayaan, home screen management yang lebih cerdas, input dan accesibility, kamera, android beam, notification, dan google now. j. Android versi 4.4 (Kit Kat) Android versi 4.4 dengan desain yang lebih cantik, performance yang makin hebat, dan banyak fitur baru yang menarik, akan membuat dominasi Android. Jika handheld sedang di homescreen atau Google Now, tanpa perlu menyentuh layar, pengguna bisa mengirim SMS, memainkan musik, meminta petunjuk jalan, atau melakukan voice search hanya dengan mengatakan Ok Google. Dalam rilisan Android terbaru ini, jika memutar lagu atau memproyeksikan film ke Chromecast, saat smartphone terkunci, pengguna akan melihat full screen album/album art. Pengguna juga bisa langsung menekan pause, skip, atau lainnya dari lockscreen. k. Android versi 5.0, 5.0.1, 5.0.2, 5.1 (Lollipop) Lollipop adalah update Android paling besar dan ambisius dengan lebih dari 5.000 API baru untuk para pengembang. Android 5.0 Lollipop memperkenalkan bahasa desain baru yang mereka sebut sebagai Material Design. Desain ini mengedepankan tipografi yang bersih, jelas, dan mempunyai warna-warna yang cerah dengan animasi yang sangat mengalir. Mengambil tema datar secara keseluruhan, bahasa desain ini tetap mengedepankan konteks nyata dalam animasi yang digunakan. Elemenelemen yang ada mempunyai bayangan sehingga memberi kesan hidup ketika dioperasikan. Dengan bantuan sistem runtime ART, kini semua aplikasi Android dapat berjalan dalam arsitektur 64-bit. Hal ini membuka kemungkinan yang lebih luas. Bahkan, bukan tidak mungkin sistem operasi
http://digilib.mercubuana.ac.id/
telepon genggam di masa depan dapat menggantikan sistem operasi desktop. Hal ini juga merupakan kabar baik bagi para produsen perangkat Android. Karena dengan Lollipop akan dapat membuat sebuah perangkat Android yang menggunakan prosesor sekelas prosesor desktop PC. 2.2 Jaringan Komputer Jaringan komputer adalah sebuah sistem yang terdiri atas komputerkomputer yang didesain untuk dapat berbagi sumber daya (printer, CPU), berkomunikasi, dan dapat mengakses informasi (Micro, A 2012). Klasifikasi jaringan komputer terbagi menjadi : 1. Berdasarkan geografisnya, jaringan komputer terbagi menjadi :
Local Area Network (LAN). LAN merupakan jaringan milik pribadi di dalam sebuah gedung
Metropolitan Area Network (MAN). MAN merupakan perluasan jaringan LAN sehingga mencakup satu kota yang cukup luas.
Wide Area Network (WAN).WAN terdiri atas puluhan gedung yang berjarak 10 - 50 kilometer Kabel transmisi yang digunakan adalah kabel serat optik (Fiber Optic). WAN merupakan jaringan antarkota, antar propinsi, antar negara, bahkan antar benua.
2. Berdasarkan fungsi, terbagi menjadi Jaringan Klien-server dan Jaringan Peer-to-peer. Jaringan klien-server pada dasaranya ada satu komputer yang disiapkan menjadi pelayan (server) dari komputer lainnya yang sebagai klien. 3. Berdasarkan topologi jaringan, jaringan komputer dapat dibedakan atas :
Topologi bus
Topologi bintang
Topologi cincin
Topologi mesh
Topologi pohon
Topologi linier
4. Berdasarkan media transmisi data
http://digilib.mercubuana.ac.id/
Jaringan berkabel (Wired Network). Pada jaringan ini, untuk menghubungkan satu komputer dengan komputer lain diperlukan penghubung berupa kabel jaringan.
Jaringan nirkabel(Wi-Fi). Merupakan jaringan dengan medium berupa gelombang elektromagnetik.
2.2 Network Monitoring Network monitoring sangat diperlukan untuk memantau keadaan operasional sebuah jaringan baik pada jalur maupun perangkat jaringan. Sebagian besar kegiatan network monitoring dlakukan melalui protokol SNMP (Simple Network Management Protocol). Hal-hal yan umum dipantau jaringan diantaranya, link, response time, availability, performa, bandwidth,CPU utilization, disk usage dan juga service. Tujuan utama dari network monitoring adalah memastikan bahwa baik jaringan maupun perangkat berjalan dengan baik. Netowor Monitoring dilakukan oleh server monitoring (Monitoring station). (Al-Mukhtar, M. 2012) menyatakan bahwa Server monitoring diimplementasikan harus menggunakan server yang efisien, yang bertindak sebagai interface dari network manager yang berkomunikasi dengan network lainnya. Kegiatan network monitoring bisa dilakukan dengan bantuan software monitoring. Software monitoring yang ada saat ini biasanya sudah dilengkapi dengan info grafis/diagram yang menarik dan mudah dimengerti. Juga ada reporting yang bisa diambil
berdasarkan waktu yang kita tentukan sendiri. Perangkat
Jaringan yang ada saat ini sudah memiliki fitur SNMP. Dalam sebuah jaringan yang besar ada kemungkinan terjadi heterogenus perangkat yaitu keberagaman jenis dan tipe perangkat, dengan SNMP selama perangkat mendukung SNMP, monitoring bisa dilakukan (Xingyua, Li. 2014).
2.2.1 SNMP (Simple Network Management Protocol) Monitoring jaringan secara umum dilakukan menggunakan protokol SNMP yang tersentral pada sebuah server di sisi klien(Srivastava, Shashank and G.C Nandi(141-148)). SNMP adalah protokol yang bekerja pada layer aplikasi dalam OSI layer, yang menyediakan format komunikasi antara yang disebut agent dan manager, yang nantinya untuk memonitoring atau memanage perangkat network
http://digilib.mercubuana.ac.id/
seperti, switch, router, pc , printer dan perangkat network lainnya. SNMP manager adalah aplikasi network management yang berjalan pada PC, dan agent adalah software yang berjalan pada perangkat yang akan di manage. SNMP agent bekerja untuk mengambil variabel yang berada pada database variabel atau yang sering disebut MIB (management Information Base) dan membuatkan parameter untuk perangkat tersebut. Pengambilan informasi dari SNMP agent disebut GET message, dan message yang menulis variabel disebut SET message. Selain SNMP GET message, untuk pengambilan value SNMP lewat MIB ada juga SNMP Trap yaitu message bila suatu perangkat terjadi masalah maka perangkat tersebut akan mengirimkan pesan SNMP trap, contohnya ketika suatu perangkat interfacenya mati.
2.2.2 Versi SNMP SNMP ada 3 versi yaitu, SNMP v1 , v2c, v3. 1. SNMPv1 beroperasi pada protokol seperti UDP (User Datagram Protocol), IP (Internet Protocol), versi ini memiliki kelemahan disisi keamaan. Autentikasi pada perangkat klien hanya dilakukan melalui “community string”, yang mana password yang ditulis akan di kirim dalam bentuk clear text. 2. SNMPv2c memiliki banyak perubahan dari SNMP v1 sebelumnya. SNMP v 2c ini merubah pada messaging system untuk mengambil lebih besar statistic suatu perangkat lebih effesien, tapi dalam sisi security tidak terlalu banyak berubah. Pada SNMP v2 ada 2 type community string:
Read Only (RO) : menyediakan akses ke variabel MIB, hanya dapat dibaca tidak dapat dirubah. karena security pada snmp v2 ini masih kurang banyak network administrator menggunakan community string type ini.
Read Write (RW): menyediakan pembacaan dan merubah variabel MIB.
3. SNMPv3 datang dengan banyak security yang powerfull dan tidak ada pada versi 1 atau 2c, security fitur pada SNMP v3:
http://digilib.mercubuana.ac.id/
message integrity : ini membantu meyakinkan bawhwa paket yang dikirmakn tidak rusak/berubah pada saat diperjalanan.
authentication : membantu meyakinkan bahwa paket datang dari source yang dapat dipercaya.
encryption : membantu bahwa data yang kirimkan tidak bisa dibaca jika ada orang yang ingin mengcapture data saat pengiriman.
Dari 3 fitur ini perangkat hanya dapat mengimplementasikan fitur tersebut pada saat konfigurasi. 2.2.3 ICMP (Internet Control Message Protocol) ICMP (Internet Control Message Protocol) adalah protokol yang bertugas mengirimkan pesan-pesan kesalahan dan kondisi lain yang memerlukan perhatian khusus. Pesan / paket ICMP dikirim jika terjadi masalah pada layer IP dan layer atasnya (TCP/UDP). Pada konsisi normal, protokol IP berjalan dengan baik. Namun ada beberapa kondisi dimana koneksi IP terganggu, misalnya karena Router crash, putusnya kabel, atau matinya host tujuan. Pada saat ini ICMP membantu menstabilkan kondisi jaringan, dengan memberikan pesan-pesan tertentu sebagai respons atas kondisi tertentu yang terjadi pada jaringan tersebut. Contoh : hubungan antar router A dan B mengalami masalah, maka router A secara otomatis akan mengirimkan paket ICMP Destination Unreachable ke host pengirim paket yang berusaha melewati host B menuju tujuannya. Dengan adanya pemberitahuan ini maka host tujuan tidak akan terus menerus berusaha mengirimkan paketnya melewati router B. Ada dua tipe pesan yang dapat dihasilkan ICMP : 1. ICMP Error Message (dihasilkan jika terjadi kesalahan jaringan) 2. ICMP Query Message (dihasilkan jika pengirim paket mengirimkan informasi tertentu yang berkaitan dengan kondisi jaringan. ICMP Error Message dibagi menjadi beberapa jenis : 1. Destination Unreachable, dihasilkan oleh router jika pengirim paket mengalami kegagalan akibat masalah putusnya jalur baik secara fisik maupun logic. 2. Time Exceeded, dikirimkan jika isi field TTL dalam paket IP sudah habis dan paket belum juga sampai ke tujuannya. Tiap kali sebuah
http://digilib.mercubuana.ac.id/
paket IP melewati satu router, nilai TTL dalam paket tsb, dikurangi satu. TTL ini diterapkan untuk mencegah timbulnya paket IP yang terus menerus berputar-putar di network karena suatu kesalahan tertentu. sehingga menghabiskan sumber daya yang ada. Field TTL juga digunakan oleh program traceroute untuk melacak jalannya paket dari satu host ke host lain. Program traceroute dapat melakukan pelacakan rute berjalannya IP dengan cara mengirimkan paket kecil UDP ke IP tujuan, dengan TTL yang di set membesar. Saat paket pertama dikirim, TTL diset satu, sehingga router pertama akan membuang paket ini dan mengirimkan paket ICMP Time Exceeded, kemudian paket kedua dikirim, dengan TTL dinaikan. Dengan naiknya TTL paket ini sukses melewati router pertama namun dibuang oleh router kedua, router ini pun mengirim paket ICMP time Exceeded. 3. Parameter Problem, paket ini dikirim jika terdapat kesalahan parameter pada header paket IP. 4. Source Quench, Paket ICMP ini dikirimkan jika router tujuan mengalami kongesti. Sebagai respons atas paket ini pihak pengirim paket harus memperlambat pengiriman paketnya. 5. Redirect, paket ini dikirimkan jika router merasa host mengirimkan paket IP melalui router yang salah. Paket ini seharusnya dikirimkan melalui router lain. Sedangkan ICMP Query Message Terdiri atas : 1. Echo dan Echo Reply, Bertujuan untuk memeriksa apakah sistem tujuan dalam keadaan aktif. Program ping merupakan program pengisi paket ini. Responder harus mengembalikan data yang sama dengan data yang dikirimkan. 2. Timestamp dan Timestamp Reply, Menghasilkan informasi waktu yang diperlukan sistem tujuan untuk memproses suatu paket. 3. Address mask, untuk mengetahui beberapa netmask yang harus digunakan suatu host dalam suatu network.
Sebagai paket pengatur kelancaran jaringan paket ICMP tidak diperbolehkan
http://digilib.mercubuana.ac.id/
membebani network. Karenanyapaket ICMP tidak boleh dikirim saat terjadi problem yang disebabkan oleh :
Kegagalan pengririman paket ICMP
Kegagalan pengiriman paket broadcast atau multicast.
Tabel 1.1 Perbandingan Protokol Protokol
Service
Port UDP/TCP
DNS
Domain Name Service-UDP
UDP 53
DNS TCP
Domain Name Service-TCP
TCP 53
HTTP
Web
TCP 80
HTTPS
Secure Web (SSL)
TCP 443
SMTP
Simple Mail Trasport
TCP 25
POP
Post Office Protocol
TCP 110
SNMP
Simple Network Management
TCP & UDP 161,162
TELNET
Telnet terminal
23
FTP
File Transfer Protocol
21
SSH
Secure Shell
22
ICMP
1
2.3 Teknologi Push notification Push notification memungkinkan aplikasi menerima notifikasi atau pesan bahkan ketika aplikasi tidak aktif berjalan. Teknologi push notification merupakan komunikasi berbasis internet dimana transaksi dilakukan langsung oleh server yang mengirimkan informasi ke penerima. Berlawanan dengan teknologi pull notification dimana transaksi dimulai oleh sisi klien atau penerima, dimana klien akan melakukan request setiap interval waktu tertentu. Pada push notification,
http://digilib.mercubuana.ac.id/
server laangsung mengirimkan notifikasi kapanpun ada informasi baru tanpa klien perlu melakukan request terlebih dahulu. Teknologi ini dianggap lebih hemat daya. 2.4 Google Cloud Messaging (GCM) GCM merupakan sebuah layanan gratis yang membantu pengembang mengirim pesan ke berbagai platform: Android, iOS, dan Chrome. Misalnya, server dapat langsung mengirim pesan ke satu perangkat, sekumpulan perangkat, atau perangkat yang berlangganan ke topik. Selain itu, aplikasi di perangkat dapat langsung mengirim pesan ke server dan ke perangkat yang ada dalam grup yang sama. Di Android layanan GCM dijalankan oleh sebuah aplikasi yang berjalan di latar belakang dan bernama Layanan Google Play. Layanan ini akan membangunkan aplikasi yang bersangkutan saat menerima notifikasi baru dan akan menampilkan notifikasi tersebut pada panel notifikasi Android. Aplikasi Android yang menggunakan GCM tidak perlu berjalan di belakang layar untuk menerima sebuah notifikasi. GCM (dalam hal ini Layanan Google Play) akan membangunakan aplikasi tersebut dengan mekanisme Broadcoast Intent (Event yang terjadi saat ada notifikasi baru) ketika ada pesan tiba selama aplikasi tersebut diatur untuk diizinkan menerima Broadcast message. Saat mengaktifkan fitur Cloud Messaging pada google kita mendapatkan API key yang digunakan sebagai credential Key pada Server terhadap server GCM. Dan juga Project Number sebagai sender ID pada aplikasi android.
http://digilib.mercubuana.ac.id/
Gambar 1.1 Google Cloud Messaging 2.5 Android Studio Android Studio merupakan lingkungan pengembangan Android baru berdasarkan IntelliJ IDEA. Mirip dengan Eclipse dengan ADT Plugin, Android Studio menyediakan alat pengembang terintegrasi untuk pengembangan dan debugging(Sembiring, R 2014). Android Studio didesain khusus untuk pengembangan aplikasi berbasis android. Android Studio bisa dijalankan pada sistem operasi Windows, MacOS, maupun Linux. Fitur-fitur pada Android Studio yang didukung hingga saat ini diantaranya :
WYSIWYANG Editor
Template Wizard untuk membangun antarmuka aplikasi
Drag and drop komponen antarmuka
Mendukung aplikasi untuk android Wear
Mendukung built-in Google Cloud Messaging
http://digilib.mercubuana.ac.id/
Tabel 1.2 System requirement Android Studio
Windows
OS X
Mac OS X 10.8.5 or higher, up to Microsoft Windows OS version 10/8.1/8/7/Vista/2003/Xp (32 or 64 bit)
10.10 to up 10.10.2 up 10.10.3 on 10.10.5 (Yosemite)
Linux
GNOME or KDE or Unity desktop on Ubuntu or Fedora or GNU/Linux Debian
RAM
2 GB RAM minimum, 4 GB RAM recommended
Disk space
500 MB disk space
Space for Android SDK
JDK version
Screen resolution
At least 1 GB for Android SDK, emulator system images, and caches
Java Development Kit (JDK) 7 or higher
1280x800 minimum screen resolution
2.6 HTML5 HTML5 merupakan penyempurnaan dari HTML yang dikeluarkan oleh W3C(World Wide Web Consortium). Yang salah satu tujuannya adalah agar teknologi HTML mudah mendukung teknologi multimedia baru. HTML5 memiliki beberapa fitur tambahan yang memungkinkan untuk memutar video dan audio. HTML5 memungkinkan untuk membuat aplikasi mobile cross-platform (Wahana Komputer. 2014). HTML5 memiliki script khusus sebagai tambahan pada API
http://digilib.mercubuana.ac.id/
(application programming interface) nya. Yang bisa digunakan dengan javascript. Dalam API baru pada HTML5 diantaranya :
Pemutar media dengan waktu
Aplikasi web offline
Edit dokumen
Drag and drop
Web Storage
Kalender
Tujuan dibuatnya HTML5 diantaranya :
Mengurangi kebutuhan plugin external seperti Flash.
Penaganan kesalahan yang baik
HTML5 merupakan perangkat yang mandiri
Proses pembangunan terlihat umum
Kelebihan HTML5 diantaranya :
Dapat ditulis dalam sintaks HTML dan XML
Dalam penulisan code akan lebih efisien
Konten pada situs mudah ter-indeks oleh search engine
Memiliki integrasi yang bagus terhadap aplikasi web
Integrasi dengan doctype lebih sederhana
Dapat dideteksi oleh browser lama
Fitur yang Tidak Muncul Lagi di HTML5
Font
Center
Frame, frameset, noframes
Acronym
Scope
Strike, u, big
Longdesc Beberapa browser sudah mendukung HTML5 seperti safari, IE9, chrome,
firefox, dan opera.. Pembuatan HTML5 juga di karenakan Standard HTML4 yang
http://digilib.mercubuana.ac.id/
dijumpai banyak memiliki kelemahan untuk mendukung aplikasi web yang interaktif. Akibat hal ini banyak orang menambahkan fitur baru baik disisi aplikasi web ataupun disisi browser. Solusi ini dikenal dengan plugin dan salah satunya adalah Flash dan Silverlight. Semakin menjamurnya plugin didalam aplikasi atau browser membuat aplikasi web ini susah untuk menembus banyak browser. Hal ini dikarenakan setiap plugin mempunyai cara yang berbeda-beda. 2.7 JSON (JavaScript Object Notation) JSON merupakan format yang ringan untuk memasukkan data ke dalam sebuah variabel. Sangat mudah dimengerti dan diimplementasikan oleh manusia, dan mudah juga untuk komputer dalam melakukan parsingnya. JSON merupakan bagian dari bahasa pemrograman JavaScript (Standart ECMA-262. 2011). JSON merupakan format teks yang sepenuhnya independen tetapi menggunakan konversi yang familiar dengan bahasa pemrograman dari keluargaC, termasuk C, C++, C#, Java, JavaScript, Perl, Python, dan sebagainya. Kelebihan inilah yang membuat JSON menjadi sebuah bahasa data-interchange yang ideal. JSON dibangun dalam dua struktur : 1. Beberapa pasangan dari nama/nilai. Dalam beberapa bahasa pemrograman biasa disebut dengan istilah object, record, struct, tabel hash, key list atau associative array. 2. Nilai-nilai yang tersusun secara ordered list. Biasa disebut dengan array, vector, list atau daftar dalam bahasa pemrograman. Json adalah struktur data yang universal, dalam artian bisa digunakan dalam berbagai bahasa pemrograman. Hampir semua bahasa pemrograman mendukung penuh JSON dalam berbagai format. Hal ini memungkinkan format data yang dapat dipertukarkan menggunakan bahasa pemrograman juga menggunakan dasar dari struktur JSON. Format data JSON mempunyai aturan sebagai berikut (http://json.org/. 2015) : a. Object adalah sepasang nama/nilai yang tidak terurutkan. Objek dimulai dengan { (kurung kurawal buka) dan diakhiri dengan } (kurung kurawal tutup). Setiap nama diikuti dengan : (titik dua) dan setiap pasangan nama/nilai dipisahkan oleh , (koma).
http://digilib.mercubuana.ac.id/
b. Array adalah kumpulan nilai yang terurutkan. Larik dimulai dengan [ (kurung kotak buka) dan diakhiri dengan ] (kurung kotak tutup). Setiap nilai dipisahkan oleh , (koma). c. Nilai (value) adalah berupa sebuah string dalam tanda kutip ganda, atau angka, atau true atau false atau null, atau sebuah objek atau sebuah larik. Struktur-struktur tersebut dapat disusun bertingkat. d. String adalah kumpulan dari nol atau lebih karakter Unicode, yang dibungkus dengan tanda kutip ganda. Di dalam string dapat digunakan backslash escapes "\" untuk membentuk karakter khusus. Sebuah karakter mewakili karakter tunggal pada string. String sangat mirip dengan string C atau Java. e. Number adalah sangat mirip dengan angka di C atau Java, kecuali format oktal dan heksadesimal tidak digunakan
http://digilib.mercubuana.ac.id/
http://digilib.mercubuana.ac.id/