BAB II KAJIAN PUSTAKA A. ANDROID 1. Sejarah Android - HARIYADI BAB II

BAB II KAJIAN PUSTAKA A. ANDROID 1. Sejarah Android Android adalah sebuah sistem operasi untuk perangkat mobile berbasis linux yang mencakup sistem operasi, middleware dan aplikasi.

  

android menyediakan platform terbuka bagi para pengembang untuk

menciptakan aplikasi mereka. Awalnya, Google Inc. Membeli Android Inc.

  Yang merupakan pendatang baru yang membuat peranti lunak untuk ponsel/smartphone. Kemudian untuk mengembangkan android, dibentuklah

  

Open Handset Alliance, konsorium dari 34 perusahaan peranti keras, peranti

  lunak, dan telekomunikasi, termasuk Google, HTC, Intel, Motorola, Qualcomm , T-Mobile, dan Nvidia (Safaat, 2012).

  Pada saat perilisan perdana android, 5 November 2007, android bersama Open Handset Alliance menyatakan mendukung pengembangan

  open source pada perangkat mobile. Di lain pihak, Google meliris kode-kode

  di bawah lisensi Apache, sebuah lisensi perangkat lunak dan open

  android platform perangkat seluler.

  Di dunia ini terdapat dua jenis distributor sistem operasi android. Pertama yang mendapat dukungan penuh dari Google atau Google Mail Servis (GSM) dan kedua adalah yang benar-benar bebas distribusinya tanpa dukungan langsung Google atau dikenal sebagai Open Handset Distribution (OHD).

  Tidak hanya menjadi sistem operasi di smartphone, saat ini android menjadi pesaing utama dari Apple pada saat operasi Table PC. Pesatnya pertumbuhan android selain faktor yang disebutkan di atas adalah karena

  android itu sendiri adalah platform yang sangat lengkap baik itu sistem

  operasinya, Aplikasi dan Tool Pengembangan, Market aplikasi android serta dukungan yang tinggi dari komunitas Open Source di dunia, sehingga

  android terus berkembang pesat baik dari segi teknologi maupun dari segi jumlah device yang ada di dunia (Safaat, 2012).

  Berikut adalah perkembangan Android :

  a. 2007

  • – 2008 Produk awal Android

  b. Android versi 1.1

  c. Android versi 1.2 - 1.5 (Cupcake)

  d. Android versi 1.6 (Donut)

  e. Android versi 2.0 - 2.1(Eclair)

  f. Android versi 2.2 (Froyo / Frozen Yoghurt)

  g. Android versi 2.3 (Gingerbread)

  h. Android versi 3.0 (Honeycomb) i. Android versi 4.0 (Ice Cream Sandwich) j. Android versi 4.1 (Jelly bean) k. Android versi 4.4 (Kitkat) l. Android versi 5.0 (Lollipop) m. Android versi 6.0 (Marshmallow) 2.

   The Dalvik Virtual Marchine (DVM)

  Salah satu elemen kunci dari Android adalah Dalvik Virtual Marchine (DVM). Android berjalan di dalam Dalvik Virtual Marchine (DVM) bukan di

  

Java Virtual Merchine (JVM). Dalvik Virtual Marchine (DVM) adalah

register bases sementara Java Virtual Marchine (JVM) adalah stack bases.

  

Dalvik Virtual Marchine menggunakan kernel Linux untuk menangani

  fungsionalitas tingkat rendah termasuk keamanan, threading, dan proses serta manajemen memori (Safaat, 2012).

3. Android SDK (Software Development Kit)

  Android SDK adalah tools API (Application Programming interface)

  yang diperlukan untuk mulai mengembangkan aplikasi pada platform

  

Android menggunakan bahasa pemrograman Java. Android merupakan

  subset perangkat lunak untuk ponsel yang meliputi sistem operasi, dan aplikasi kunci yang di-release oleh Google. Saat ini

  middleware

  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 kesempatan untuk membuat aplikasi yang kita butuhkan yang bukan merupakan aplikasi bawaan Handphone/smartphone (Safaat, 2012).

4. ADT (Android Development Tools)

  Android Development Tools (ADT) adalah plugin yang didesain untuk

  

IDE Eclipce 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 menambahkan komponen-komponen 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 (Safaat, 2012).

  Berikut adalah versi ADT untuk Eclipse yang sudah dirilis:

  a. ADT 12.0.0 (Juli 2011)

  b. ADT 11.0.0 (Juni 2011)

  c. ADT 10.0.1 (Maret 2011)

  d. ADT 10.0.0 (Februari 2011)

  e. ADT 9.0.0 (Januari 2011)

  f. ADT 8.0.1 (Desember 2010)

  g. ADT 8.0.0 (Desember 2010)

  h. ADT 0.9.9 (September 2010) i. ADT 0.9.8 (September 2010) j. ADT 0.9.7 (Mei 2010) k. ADT 0.9.6 (Maret 2010) l. ADT 0.9.5 (Desember 2010) m. ADT 0.9.4 (Oktober 2010)

  Semakin tinggi platform android yang kita gunakan, dianjurkan menggunakan ADT yang lebih terbaru, karena biasanya munculnya platform baru diikuti oleh munculnya versi ADT terbaru.

5. Arsitektur Android

  Secara garis besar Arsitektur Android dapat dijelaskan dan digambarkan sebagai berikut (Safaat, 2012) : a. Application dan Widgets

  Application dan Widgets ini adalah layer dimana kita berhubungan

  dengan aplikasi saja, dimana biasaya kita download aplikasi kemudian kita lakukan instalasi dan jalankan aplikasi tersebut.

  b. Application Frameworks

  Application Frameworks ini adalah layer dimana para pembuat

  aplikasi melakukan pengembangan/pembuatan aplikasi yang akan dijalankan disistem operasi Android, karena pada layer inilah aplikasi dapat dirancang dan dibuat.

  Komponen-komponen yang termasuk didalam Application

  Frameworks adalah :

  1) Views 2) Content Provider 3) Resource Manager 4) Activity Manager

  c. Libraries

  Libraries ini adalah layer di mana fitur-fitur Android berada, biasanya para pembuat aplikasi mengakses libraries untuk menjelaskan aplikasinya.

  d. Android Run Time

  Layer yang membuat aplikasi Android dapat dijalankan dimana dalam

prosesnya menggunakan Implementasi Linux. Dalvik Virtual Marchine

(DVM) merupakan mesin yang membentuk dasar kerangka aplikasi Android.

  Di dalam Android Run Time dibagi menjadi 2 bagian yaitu: 1) Core Libraries: Aplikasi Android dibangun dalam bahasa Java, sementara Dalvik sebagai virtual mesinnya bukan Virtual Machine Java, sehingga diperlukan sebuah libraries yang berfungsi untuk menerjemahkan bahasa Java yang ditangani oleh Core Libraries.

  2) Dalvik Virtual Machine: virtual mesin berbasis register yang dioptimalkan untuk menjalankan fungsi-fungsi secara efisien, dimana merupakan pengembangan yang mampu membuat Linux Karnel untuk melakukan thrending dan manajemen tingkat rendah. e. Linux kernel

  Linux Karnel adalah layer di mana inti dari operating system dari Android itu berada. Berisi file-file system yang mengatur sistem processing, memory, resource, drivers , dan sistem-sistem operasi Android lainnya. Linux Karnel yang digunakan Android adalah linux karnel release 2.6.

B. Eclipse

  Eclipse merupakan sebuah

  IDE (Integrated Development

Environment) yaitu aplikasi yang memiliki fasilitas untuk mengembangkan

  aplikasi. Eclipse merupakan tools yang sangat popular dalam mengembangkan aplikasi Java. Selain itu juga merupakan IDE yang sangat disarankan untuk mengembangkan aplikasi Android oleh Google, karena

  Google telah menyediakan plugin ADT untuk Eclipse agar memudahkan membangun aplikasi Android (Safaat, 2012). developer C.

   PHP (Hypertext Preprocessor)

  PHP ( Hypertext Preprocessor ) adalah bahasa scripting server-side bagi pemrograman web. Secara sederhana, PHP merupakan tool bagi pengembangan web dinamis, PHP sangat populer karena memiliki fungsi

  built-in lengkap, cepat, mudah dipelajari, dan bersifat gratis. Skrip PHP

  cukup disisipkan pada kode HTML agar dapat bekerja. PHP dapat berjalan di berbagai web server dan sistem operasi yang berbeda. (Wibowo, 2007).

  D. Database MySQL

  MySQL (My Structure Query Language) merupakan database

multiuser yang menggunakan bahasa Structure Query Language (SQL).

  MySQL dalam operasi client-server, melibatkan server-daemon MySQL di sisi server dan berbagai macam program, serta library yang berjalan di sisi

  

client . MySQL mampu menangani data yang cukup besar. SQL adalah

  bahasa standar yang digunakan untuk mengakses server database. Bahasa ini awalnya dikembangkan IBM, tetapi telah diadopsi dan digunakan sebagai standar industri. Dengan menggunakan SQL , proses akses database menjadi lebih friendly. Dalam konteks bahasa SQL, informasi umumnya tersimpan dalam tabel-tabel yang secara logis merupakan struktur dua dimensi yang terdiri atas baris-baris data yang berada dalam satu atau lebih kolom. Baris pada tabel sering disebut entitas dari data, sedangkan kolom sering disebut

  

atribut atau field. Keseluruhan tabel itu dihimpun dalam suatu kesatuan yang

disebut database (Wirawan, 2009).

  E. WEB SERVICE

  merupakan suatu sistem yang menyediakan pelayanan

  Web Service

  yang dibutuhkan oleh klien. Klien dari web service tidak hanya berupa apliklasi web, tapi juga bisa sebuah aplikasi enterprise. Jadi web service tidak sama dengan web server, bahkan sebuah aplikasi web pada web server dapat menjadi klien dari web service. Pelayanan yang memberikan web service bisa berupa XML yang berisi data yang dibutuhkan klien. Web service tidak menampilkan sebuah halaman web, tapi hanya memberikan pelayanan permintaan klien yang memiliki izin akses terhadap pelayanan yang diminta (Salahudin dan Rosa, 2008).

  F.

   XML (Extensible Markup Language)

  XML atau Extensible Markup Language bukanlah bahasa pemrograman. XML adalah kumpulan aturan untuk mendesain format teks sehingga menjadi terstruktur. XML digunakan untuk membuat data yang terstruktur. XML dibuat agar sebuah data dapat lebih mudah dibaca oleh komputer (Salahudin dan Rosa, 2008).

G. JAVASCRIPT

  JavaScript adalah bahasa script (bahasa pemrograman yang dapat

  memegang kontrol aplikasi) yang berbasis pada bahasa pemrograman Java, namun JavaScript bukanlah bagian teknologi Java dari Sun. Java merupakan bahasa pemrograman berorientasi objek murni sedangkan JavaScript digunakan secara prosedural. Cara kerja JavaScript adalah mengakses elemen pada HTML dan membuat aksi jika elemen-elemen HTML itu mengalami perubahan, misalnya berubahnya warna halaman web begitu sebuah tombol diklik. JavaScript membuat sebuah halaman web menjadi lebih dinamis. JavaScript yang digunakan pada halaman web merupakan

  

client side scripting yang berarti bahwa web browser mengidentifikasi dan

  menjalankan skrip program yang disisipkan dalam dokumen web (yang diterima dari server), dan mungkin memperbaharui tampilan halaman di komputer pemakai (user) tanpa mengirimkan permintaan (request) baru kepada web server. Karena JavaScrip pada halaman web adalah client side

  

scripting maka kode JavaScript yang ditulis satu file dengan dokumen

HTML akan ditampilkan ketika sebuah halaman web dilihat source code-nya.

  JavaScript merupakan bahasa yang case sensitive seperti halnya

  bahasa pemrograman Java yaitu membedakan penulisan dengan huruf kecil dan huruf besar memiliki arti yang berbeda (Salahudin dan Rosa, 2008).

H. PENELITIAN SEJENIS

  Berikut ini adalah beberapa hasil penelitian sejenis tentang aplikasi pemesanan makanan :

  1. Aplikasi serupa juga pernah di buat oleh Ghurrotus (2013) yang berjudul “ Sistem Aplikasi Pemesanan Menu Makanan Dirumah Makan Diva Lesehan Berbasis SMS Gateway

  “. Penerapannya menggunakan SMS

  Gateway , digunakan untuk penyampaian informasinya dengan format

  SMS yang telah ditentukan. Dengan konsep seperti ini, pemilik dapat mengakses informasi pesanan tanpa harus datang langsung ke restoran, cukup dengan mengirimkan SMS dari ponselnya.

  2. Aplikasi serupa juga pernah di buat oleh Anggia (2012) , yang berjudul “

  Aplikasi Pemesanan Makanan Pada Restoran Berbasis Android Dan PHP Menggunakan Protokol Json

  “. Peneliti ini bertujuan untuk membangun aplikasi pemilihan objek berbasis android di restoran Yogyakarta menggunakan metode fuzzy tahani yang dapat dengan mudah digunakan oleh pengguna berdasarkan kriteria yang mudah dimengerti.

  3. Bhargave dkk (2013).

  Restoran adalah salah satu tempat favorit. Dengan tidak memperhatikan alasan sebenarnya untuk mengunjungi restoran, Pelanggan akan membuat pesanan dan menunggu makanan yang dipesan. Namun, biasanya pelanggan mengeluh karena tidak merasa puas dengan layanan yang ditawarkan.

  Ada banyak alasan yang menyebabkan rasa tidak puas termasuk dihibur terlambat dalam hal pemesanan dengan pelayan dan makanan yang disajikan. Isu terhibur akhir bisa dipecahkan dengan bantuan kemajuan teknologi komunikasi. Sesuai, penelitian ini memulai sistem yang terintegrasi dan berjejaring, dengan fokusnya adalah pada kemampuannya untuk mengatasi keterbatasan yang disebutkan di atas dalam rangka pengambilan.

  Studi ini menyebut sistem ini sebagai Digital Ordering System for

  

Restaurant Using Android (DOSRUA). Dalam definisi, DOSRUA adalah

  sistem terpadu yang dikembangkan untuk membantu kelompok manajemen restoran dengan memungkinkan pelanggan untuk segera membuat pesanan sendiri. Sistem ini akan meminimalkan jumlah menit menunggu makanan yang disajikan.

  Proyek ini berkaitan dengan sistem pemesanan digital untuk restoran. Topik ini mencakup ruang lingkup proyek, karakteristik proyek, lingkungan operasi, asumsi dan dependensi, batasan desain dan implementasi. Ruang lingkup proyek mencakup fitur yang bisa diimplementasikan. Bagian desain meliputi metode dan cara mendesain produk. Proyek ini juga menjelaskan kendala dalam merancang dan mengimplementasikan.