Pemanfaatan Teknologi GPS dan Kompas Dalam Pembangunan Aplikasi Friend Finder Berbasis Mobile Pada Platform Android

  

PEMANFAATAN TEKNOLOGI GPS DAN KOMPAS DALAM

PEMBANGUNAN APLIKASI FRIEND FINDER BERBASIS MOBILE

PADA PLATFORM ANDROID

SKRIPSI

  Diajukan untuk Menempuh Ujian Akhir Sarjana

  

ALDIO FIRANDO

10110399

PROGRAM STUDI TEKNIK INFORMATIKA

FAKULTAS TEKNIK DAN ILMU KOMPUTER

DAFTAR RIWAYAT HIDUP A.

   Data Pribadi Nama : Aldio Firando Tempat Tanggal Lahir : Tuban, 21 Mei 1992 Jenis Kelamin : Laki Laki Golongan Darah : B Pekerjaan : Mahasiswa Agama : Islam Kewarganegaraan : Indonesia Alamat Rumah : Cisitu Indah VI No. 194

  Telepon : 085645921931 Email Status : Belum Menikah Tinggi/Berat : 178cm/62kg Hobi : Membaca, Web Design, Photo Editing B.

   Pendidikan No Pendidikan Jurusan Periode

  

1 Universitas Komputer Indonesia Teknik Informatika 2010-sekarang (smt.3)

  2 SMA Negeri 1 Tuban

IPA 2007-2010

  3 SMP Negeri 1 Tuban - 2004-2007

  4 SD Pusaka Tuban - 2001-2007

  Saya menyatakan bahwa saya telah menulis rincian CV saya dengan benar dan lengkap.

  Bandung: 8 Agustus 2014

  DAFTAR ISI

  1.5.1 Metode Pengumpulan Data ............................................................... 3

  1.3 Location Based-Service (LBS) .............................................................. 11

  1.2 Google Maps ......................................................................................... 10

  1.1.1 Arsitektur Android ............................................................................ 7

  1.1 Pengenalan Android ................................................................................ 7

  BAB 2 LANDASAN TEORI .............................................................................. 7

  1.6 Sistematika penulisan .............................................................................. 5

  1.5.2 Metode Pengembangan Perangkat Lunak ......................................... 4

  1.5 Metodologi Penelitian ............................................................................. 3

  ABSTRAK ............................................................................................................... i

  1.4 Batasan Masalah...................................................................................... 3

  1.3 Maksud dan Tujuan ................................................................................. 2

  1.2 Perumusan Masalah ................................................................................ 2

  1.1 Latar Belakang Masalah .......................................................................... 1

  BAB 1 PENDAHULUAN .................................................................................. 1

  KATA PENGANTAR ........................................................................................... iii DAFTAR GAMBAR .............................................................................................. x DAFTAR TABEL ................................................................................................ xiii DAFTAR SIMBOL ............................................................................................... xv DAFTAR LAMPIRAN ........................................................................................ xix

  

ABSTRACT .............................................................................................................. ii

  1.4 Global Positioning System (GPS) ......................................................... 12

  1.4.1 Akurasi GPS .................................................................................... 13

  1.12 Android Development Tool (ADT) ....................................................... 20

  1.17.1.1 Diagram Dalam UML .............................................................. 25

  1.17.1 Unified Modelling Language (UML) .............................................. 25

  1.17 Konsep Pemrograman Berorientasi Objek ............................................ 24

  1.16 Konsep Pemrograman Terstruktur......................................................... 24

  1.15.1 Kelebihan PHP Dari Bahasa Pemrograman Lain ............................ 24

  1.15 PHP ........................................................................................................ 23

  1.14.1 Edisi Java ......................................................................................... 22

  1.14 Java ........................................................................................................ 22

  1.13 JSON ...................................................................................................... 20

  1.11 Java Development Kit (JDK) ................................................................ 20

  1.4.2 Android Dan GPS ............................................................................ 14

  1.10 Software Development Kit (SDK) ........................................................ 19

  1.9.1 Arsitektur Eclipse ............................................................................ 19

  1.9 Eclipse ................................................................................................... 18

  1.8 MySQL ................................................................................................... 16

  1.7 Jaringan Internet .................................................................................... 16

  1.6 Basis data (Database) ............................................................................ 16

  1.5 Kompas .................................................................................................. 15

  1.4.3.2 Longitude ................................................................................. 15

  1.4.3.1 Latitude..................................................................................... 15

  1.4.3 Latitude dan Longitude .................................................................... 15

  1.17.1.1.1 Usecase Diagram ............................................................... 26

  1.17.1.1.3 Sequence Diagram ............................................................. 26

  1.17.1.1.4 Collaboration Diagram ...................................................... 26

  1.17.1.1.5 State Chart Diagram .......................................................... 26

  1.17.1.1.6 Activity Diagram ............................................................... 27

  1.17.1.1.7 Component Diagram ......................................................... 27

  1.17.1.1.8 Deployment Diagram ........................................................ 27

  BAB 3 ANALISIS DAN PERANCANGAN SISTEM .................................... 29

  1.1 Analisis Sistem ...................................................................................... 29

  1.1.1 Analisis Masalah ............................................................................. 29

  1.1.2 Deskripsi Sistem ............................................................................. 29

  1.1.3 Alur Kerja Sistem ............................................................................ 30

  1.1.4 Analisis Kebutuhan non-Fungsional ............................................... 33

  1.1.4.1 Analisis Kebutuhan Perangkat Keras ...................................... 33

  1.1.4.2 Analisis Kebutuhan Perangkat Lunak...................................... 33

  1.1.4.3 Analisis Pengguna.................................................................... 33

  1.1.5 Analisis Kebutuhan Fungsional ...................................................... 33

  1.1.5.1 Analisis Kebutuhan Fungsional Web Service ......................... 34

  1.1.5.1.1 Diagram Konteks ................................................................. 34

  1.1.5.1.2 DFD LVL 1 ......................................................................... 35

  1.1.5.1.3 DFD LVL 2 Proses 1 ........................................................... 36

  1.1.5.1.4 DFD LVL 2 Proses 2 ........................................................... 36

  1.1.5.1.5 DFD LVL 2 Proses 3 ........................................................... 37

  1.1.5.1.6 Spesifikasi Proses LVL 1 .................................................... 38

  1.1.5.1.7 Kamus Data ......................................................................... 42

  1.1.5.2.1 Model Usecase Sistem Friend Finder ................................. 44

  1.2.2.4 Perancangan Antarmuka Friend Detail.................................... 97

  1.2.4 Diagram Semantik ......................................................................... 103

  1.2.3.3 Perancangan Antarmuka Message Box Add as Friend .......... 103

  1.2.3.2 Perancangan Antarmuka Message Box Pending Request ...... 102

  1.2.3.1 Perancangan Antarmuka Message Box Friend Request ........ 102

  1.2.3 Perancangan Pesan ........................................................................ 102

  1.2.2.8 Perancangan Antarmuka Compass ......................................... 101

  1.2.2.7 Perancangan Antarmuka Map ................................................ 100

  1.2.2.6 Perancangan Antarmuka Navigation ........................................ 99

  1.2.2.5 Perancangan Antarmuka Add Friend ....................................... 98

  1.2.2.3 Perancangan Antarmuka Friend............................................... 96

  1.1.5.2.2 Definisi Aktor ...................................................................... 44

  1.2.2.2 Perancangan Antarmuka Login ................................................ 95

  1.2.2.1 Perancangan Antarmuka Register ............................................ 94

  1.2.2 Perancangan Antarmuka .................................................................. 94

  1.2.1 Perancangan Struktur Menu ............................................................ 93

  1.2 Perancangan Sistem ............................................................................... 93

  1.1.5.2.7 Sequence Diagram ............................................................... 79

  1.1.5.2.6 Class Diagram ...................................................................... 77

  1.1.5.2.5 Activity Diagram ................................................................. 64

  1.1.5.2.4 Usecase Skenario ................................................................. 46

  1.1.5.2.3 Definisi Usecase .................................................................. 45

  1.2.5 Perancangan Metode...................................................................... 104

  1.2.5.2 Perancangan Method Aplikasi Pembangun ........................... 108

  BAB 4 IMPLEMENTASI DAN PENGUJIAN SISTEM ............................... 111

  4.1 Implementasi Sistem ........................................................................... 111

  4.1.1 Implementasi Perangkat Lunak ..................................................... 111

  4.1.2 Implementasi Perangkat Keras ...................................................... 111

  4.1.3 Implementasi Basis Data ............................................................... 112

  4.1.4 Implementasi Class ....................................................................... 113

  4.1.5 Implementasi Antarmuka .............................................................. 113

  4.2 Pengujian Sistem ................................................................................. 114

  4.2.1 Rencana Pengujian Blackbox ........................................................ 115

  4.2.2 Rencana Pengujian Betha .............................................................. 118

  4.2.3 Pengujian dan Hasil Pengujian Blackbox ...................................... 119

  4.2.4 Pengujian dan Hasil Pengujian Betha ........................................... 122

  BAB 5 Kesimpulan dan Saran......................................................................... 129

  5.1 Kesimpulan ......................................................................................... 129

  5.2 Saran .................................................................................................... 129 Daftar Pustaka ..................................................................................................... 131

  Daftar Pustaka

  [1] sparxsystems. [Online] [2] gpstracker. [Online] [3] Android Developer. [Online].

  

  [4] N. Safaat, Pemrograman Aplikasi Mobile Smartphone dan Tablet PC Berbasis Android. Bandung: Informatika, 2011. [5] Whisnu, GPS Pada Android. Jakarta: Jasakom, 2012. [6] O. Media. (2014, Jan.) www.obengplus.com. [Online].

  

  [7] (2014, May) w3school. [Online] [8] S. Wina Noviani Fatimah. (2011, Feb.) Pengenalan Eclipse. [9] A. Sucista, "PEMBANGUNAN SISTEM APLIKASI LAYANAN

  BERBASIS LOKASI PENCARIAN ATM DAN POM BENSIN TERDEKAT BERBASIS ANDROID," AMIKOM Naskah Publikasi Skripsi, 2012.

  [10] JSON website. [Online] [11] S. Noviyanto. (2012, Mar.) Pengenalan Bahasa Pemrograman Java . PDF Document.

  [12] Y. Ferdianto. (2013, Apr.) PHP. [13] Institute Teknologi Sepuluh Nopember. (2013, Sep.) Laboratorium Rekayasa

  Perangkat Lunak Teknik Informatika ITS. [Online].

  

  [14] R. A.S., Modul Pembelajaran Rekayasa Perangkat Lunak (Terstruktur & Berorientasi Objek). Indonesia: INFORMATIKA, 2011.

KATA PENGANTAR

  Asalammualaikum Wr. Wb

  Puji dan syukur penulis panjatkan kehadirat Allah SWT yang telah melimpahkan rahmat serta hidayah-Nya. Shalawat dan salam penulis panjatkan kepada Nabi Muhammad SAW. Atas segala rahmat dan karunia-Nya lah penulisan laporan skripsi yang berjudul “Pemanfaatan Teknologi Gps Dan Kompas Dalam Pembangunan Aplikasi

  Friend Finder Berbasis Mobile Pada Platform Android

  ” dapat diselesaikan sesuai waktu yang dihrapkan. Dalam menyusun skripsi ini, penulis banyak memperoleh bantuan serta bimbingan dari berbagai pihak. Oleh karena itu, penulis ingin menyampaikan ucapan terimakasih kepada 1.

  Keluarga besar penulis terutama kedua orang tua yang telah memberikan dukungan yang sangat besar kepada penulis.

  2. Bapak Dr. Ir. Eddy Soeryanto Soegoto, M.Sc. selaku Rektor UNIKOM.

  3. Bapak Prof. Dr. H. Denny Kurniadie, Ir., M.Sc. selaku Dekan Fakultas Teknik dan Ilmu Komputer.

  4. Bapak Irawan Afrianto, S.T., M.T. Selaku Ketua Program Studi Teknik Informatika.

  5. Ibu Sufa’atin, S.T.,M.Kom selaku dosen wali IF-9.

  6. Bapak Eko Budi Setiawan, S.Kom., M.T selaku dosen pembimbing yang telah sabar membimbing untuk menyelesaikan laporan skripsi ini.

  7. Bapak Adam Mukharil Bachtiar, S.Kom., M.T selaku dosen reviewer yang banyak sekali memberikan masukan dan kritikan yang membangun dan membuat penulisan laporan skripsi ini menjadi lebih baik.

  8. Ibu Tati Harihayati M. , S.T., M.T. yang telah memberikan masukan sebelum melakukan siding skripsi sekaligus menjadi dosen penguji sidang.

  9. Adik penulis Elvira Tanaya Firando yang ikut membantu mencari data dan melakukan pengujian.

  10. Sheba Qintadali Suciayuwastika yang telah memberikan dukungan lebihnya disetiap progress penulisan laporan skripsi ini.

  11. Rahayu Dwi Permatasari sebagai tempat sharing apabila menemui masalah dalam pembuatan laporan skripsi ini.

  12. Teman-teman pemain game DotA di Tuban yang membantu melakukan testing aplikasi.

  13. Teman-teman pemain game Dragon Nest yang selalu memberikan masukan dan ide-ide yang cemerlang.

  14. Teman-teman seperjuangan skripsi IF-9 yang saling mendukung satu sama lain agar dapat lulus bersama.

  15. Teman-teman IF-9 angkatan 2010 yang selalu mendukung teman-temannya yang sedang skripsi.

  16. Seluruh pihak-pihak yang terlibat dan tidak bisa penulis sebutkan satu per satu.

  Penulis telah berupaya dengan maksimal dalam penulisan laporan skripsi ini, namun penulis menyadari masih banyak kekurangan baik isi maupun penulisan laporan skripsi. Untuk itu penulis mengharapkan kritik yang membangun dan saran agar dapat menyempurnakan laporan skripsi ini. Semoga laporan skripsi ini dapat bermanfaat bagi pembaca maupun peneliti yang ingin mengembangkan kembali penelitian ini dan menjadikan laporan ini sebagai referensi bagi peneliti yang tertarik meneliti hal yang sama.

  Wassalamualaikum Wr.Wb.

  Bandung, 8 Agustus 2014

BAB 1 PENDAHULUAN

1.1 Latar Belakang Masalah

  Telepon seluler sekarang ini telah menyediakan fitur-fitur yang sangat membantu. Telepon selular yang sebelumnya hanya digunakan untuk alat komunikasi suara (telepon) dan alat pengirim pesan (Short Message Service) saja sekarang dengan semakin bertambahnya kebutuhan akan fitur baru maka para vendor telepon seluler mulai menanamkan teknologi-teknologi baru berupa sensor-sensor pada Smartphone. Dalam hal penunjuk arah biasa digunakan GPS dan Kompas.

  Dalam kehidupan sehari-hari kita harus menemui seseorang di suatu tempat yang belum kita ketahui lokasinya. Aplikasi umum yang dipakai oleh masyarakat untuk mencari lokasi adalah Google Maps atau navigasi yang disediakan oleh beberapa Smartphone untuk menuju lokasi tersebut. Namun berdasarkan penelitian awal yang diperoleh dengan melakukan kuisioner sebesar 78,79% responden mengatakan fasilitas Google Maps dan Navigasi tidak bisa membantu untuk menemukan lokai yang lebih spesifik atau kurang dikenal. Bahkan pada banyak kasus masih menggunakan telepon untuk saling bertanya dan harus memberikan banyak informasi agar lokasi dapat ditemukan. Lokasi yang lebih spesifik dimana seseorang berada bisa didapatkan dari koordinat Latitude dan

  

Longitude telepon selulernya. Akan tetapi lokasi tersebut tidak dapat digunakan

pengguna umum sebagai dasar pencarian lokasi yang lebih detail.

  GPS (Global Positioning System) adalah suatu sistem navigasi dengan bantuan satelit yang berfungsi untuk menentukan posisi, arah kecepatan dan waktu [2]. Sekarang fasilitas ini telah ditanamkan ke dalam telepon seluler (Smartphone) untuk mencari lokasi dan biasanya terintegrasi dengan peta yang telah disediakan google yaitu Google Maps supaya titik lokasi tersebut dapat tergambarkan dengan baik. Kompas adalah sebuah alat navigasi yang fungsinya untuk menunjukkan arah (mata angin). Pada perkembangan saat ini telepon seluler (Smartphone) sudah menanamkan beberapa sensor seperti sensor gerak, sensor lingkungan, dan sensor posisi [3]. Disini kompas termasuk ke dalam kategori sensor posisi. Dengan menggunakan sensor ini maka Smartphone dapat digunakan sebagai penunjuk arah sebagaimana fungsi dari kompas.

  Dengan mengkombinasikan lokasi yang didapatkan dari GPS dan kompas yang diubah orientasinya berdasarkan perbedaan derajat bearing sebuah lokasi maka dapat dibuat sebuah aplikasi pencarian teman dengan mengarahkannya ke tempat tujuan. Namun nilai akurasi untuk penggunaannya dalam aplikasi masih belum diteliti.

  Berdasarkan uraian latar belakang masalah diperlukan penelitian eksperimen untuk mengetahui seberapa besar akurasi dari penggunaan GPS dan kompas dalam menemukan lokasi teman. Oleh karena itu didapatkan sebuah judul penelitian yaitu

  “Pemanfaatan Teknologi GPS Dan Kompas Dalam Pembangunan Aplikasi Friend Finder Berbasis Mobile Pada Platform Android ”.

  1.2 Perumusan Masalah

  Rumusan masalah untuk penelitian ini adalah bagaimana memanfaatkan teknologi gps dan kompas dalam pembangunan aplikasi Friend Finder berbasis

  mobile pada platform Android.

  1.3 Maksud dan Tujuan

  Dari latar belakang masalah yang telah diuraikan, maksud dari penulisan skripsi ini adalah melakukan pemanfaatan teknologi GPS dan kompas dalam pembangunan aplikasi Friend Finder berbasis mobile pada platform Android.

  Tujuan yang ingin dicapai dari penelitian ini adalah: 1. Mengetahui berapa besar jarak dan simpangan ketidaktepatan akurasi penggunaan GPS dan kompas dalam pencarian lokasi teman.

2. Mengetahui seberapa besar manfaat penggunaan GPS dan kompas dalam membantu menemukan lokasi teman.

1.4 Batasan Masalah

  Batasan masalah dalam Pemanfaatan Teknologi GPS Dan Kompas Dalam Pembangunan Aplikasi Friend Finder Berbasis Mobile Pada Platform Android ini adalah:

  1. Hanya bisa digunakan untuk lokasi pada ketinggian sama. Tidak bisa menentukan perbedaan lantai pada gedung bertingkat (Keterbatasan GPS).

  2. Kecepatan dan akurasi untuk mendapatkan lokasi didasarkan dari tempat dan jenis perangkat yang digunakan.

  3. Untuk pengujian menggunakan device Samsung Galaxy Ace 3 n device Samsung Galaxy Wonder (GT-l8150).

  4. Pendekatan analisis kebutuhan pada pembangunan perangkat lunak ini digunakan permodelan berorientasi objek pada aplikasi mobile dan permodelan terstruktur pada web service.

1.5 Metodologi Penelitian

  Metodologi yang digunakan dalam penelitian ini adalah penelitian eksperimen, yaitu sebuah penelitian yang dilakukan dengan memberikan sebuah kondisi yang dikontrol untuk mengetahui perubahan yang terjadi.

  Metode penelitian merupakan tahapan-tahapan yang dilalui dalam pembangunan sistem, mulai dari perumusan masalah hingga penarikan kesimpulan, yang membentuk suatu alur yang sistematis. Metode penelitian digunakan sebagai pedoman dalam pelaksanaan penelitian, agar hasil yang dicapai sesuai dengan tujuan dari pembangunan sistem. Ada dua buah metode penelitian yang digunakan dalam penelitian ini yaitu metode pengumpulan data dan metode pengembangan perangkat lunak.

1.5.1 Metode Pengumpulan Data

  Metode pengumpulan data yang digunakan dalam penelitian ini adalah: a.

  Studi Literatur Pengumpulan data yang bersumber dari buku, jurnal, paper dan situs b.

  Kuisioner Pengumpulan data yang dilakukan dengan melemparkan pertanyaan kepada masyarakat umum untuk memperoleh fakta yang ada di masyarakat.

1.5.2 Metode Pengembangan Perangkat Lunak

  Metode yang diterapkan dalam pembangunan perangkat lunak Friend Finder ini, ialah waterfall yang diutarakan oleh Ian Sommerville, yang meliputi beberapa proses yaitu :

Gambar 1.1 Model Waterfall a.

   Requirements definition

  Pada proses ini dilakukan pengumpulan data dengan studi literatur yaitu pengumpulan data yang bersumber dari buku, jurnal, paper serta situs internet. Kemudian metode pengumpulan data kedua adalah kuisioner yaitu dengan penyebaran ke beberapa responden umum secara acak untuk mengetahui kebutuhan apa saja yang dibutuhkan oleh pengguna.

  b.

   System and software design

  Pada proses System and software design dilakukan analisis data menentukan kebutuhan dan merancang hal-hal apa saja yang harus dibuat dalam perangkat lunak yang akan dibangun. Sehingga fungsional dari perangkat lunak yang dibangun dapat mencakup dari kebutuhan pengguna.

  c.

   Implementation and unit testing Implementation and unit testing diterapkan hasil dari proses System and software design yang telah menjadi sebuah perancangan

  perangkat lunak menjadi sebuah aplikasi dengan menerjemahkannya ke dalam suatu bahasa pemrograman tertentu. Disini peneliti menggunakan bahasa pemrograman Java.

  d.

   Integration and system testing

  Tahap Integration and system testing dilakukan pengujian perangkat lunak yang telah dibangun terhadap seluruh komponen.Setiap bagian dari perangkat lunak peneliti melakukan testing guna mengetahui dimana letak dari kekurangan perangkat lunak yang dibangun sehingga dapat dikoreksi dan diperbaiki.

  e.

   Operation and maintenance Operation and maintenance merupakan tahap akhir dari

  pembangunan perangkat lunak dan disini mulai mengaplikasikan perangkat lunak ke pengguna umum dan dengan berjalannya waktu sesuai kebutuhan yang terus bertambah maka disini juga dilakukan perubahan- perubahan pada perangkat lunak.

1.6 Sistematika penulisan

  Sistematika penulisan penelitian ini disusun untuk memberikan gambaran umum tentang penelitian yang dijalankan. Sistematika penulisan tugas akhir ini adalah sebagai berikut :

  BAB I PENDAHULUAN Bab ini menerangkan secara umum mengenai latar belakang, melakukan identifikasi masalah yang sedang dihadapi, menentukan maksud dan tujuan, batasan-batasan masalah yang mencakup perangkat lunak yang akan dibangun, metodologi penelitian yang dilakukan untuk membangun perangkat lunak, serta sistematika penulisan tugas akhir.

  BAB II LANDASAN TEORI Pada bab ini membahas berbagai konsep dasar dan teori-teori yang berkaitan dengan topik penelitian yang dilakukan untuk mendukung analisis dan perancangan dan hal-hal yang berguna dalam proses analisis permasalahan serta tinjauan terhadap penelitian-penelitian serupa yang telah pernah dilakukan sebelumnya.

  BAB III ANALISIS DAN PERANCANGAN SISTEM Bab ini berisi pemaparan analisis masalah, analisis sistem yang sedang berjalan, analisis kebutuhan data, analisis basis data, analisis jaringan, analisis kebutuhan fungsional, dan analisis kebutuhan non fungsional. Hasil dari analisis tersebut digunakan untuk melakukan perancangan perangkat lunak.

  BAB IV IMPLEMENTASI DAN PENGUJIAN SISTEM Bab ini menjelaskan tentang implementasi dan pengujian dari perangkat lunak yang dibangun berdasarkan analisis dan perancangan perangkat lunak yang telah dilakukan. Hasil dari implementasi kemudian dilakukan pengujian perangkat lunak menggunakan metode blackbox sehingga perangkat lunak yang dibangun sesuai dengan analisis dan perancangan yang telah dilakukan.

  BAB V KESIMPULAN DAN SARAN Bab ini berisi tentang penarikan kesimpulan yang diperoleh dari bab-bab sebelumnya terutama keterkaitan antara masalah yang dihadapi dengan tujuan dari penulisan tugas akhir ini serta saran-saran yang bersifat membangun dari semua pihak yang terkait agar dapat memperbaiki kekurangan-kekurangan dalam penulisan tugas akhir ini.

BAB 2 LANDASAN TEORI

1.1 Pengenalan Android

  Android merupakan sistem operasi mobile yang tumbuh di tengah sistem operasi lainnya yang berkembang dewasa ini. Sistem operasi lainnya seperti Windows Mobile, i-Phone OS, Symbian dan masih banyak lagi juga menawarkan kekayaan isi dan keoptimalan berjalan di atas perangkat hardware yang ada. Akan tetapi, sistem operasi yang ada ini berjalan dengan memprioritaskan aplikasi inti yang dibangun sendiri tanpa melihat potensi yang cukup besar dari aplikasi pihak ketiga. Oleh karena itu, adanya keterbatasan distribusi aplikasi pihak ketiga untuk platform mereka [4].

  Android menawarkan sebuah lingkungan yang berbeda untuk pengembang. Setiap aplikasi memiliki tingkatan yang sama. Android tidak membedakan antara aplikasi inti dengan aplikasi pihak ketiga. Application Programming Interface (API) yang disediakan menawarkan akses ke hardware, maupun data-data ponsel sekalipun, atau data sistem sendiri. Bahkan pengguna dapat menghapus aplikasi inti dan menggantikannya dengan aplikasi pihak ketiga [4].

1.1.1 Arsitektur Android

  Arsitektur Android dapat digambarkan seperti pada gambar 1 dan secara garis besar Arsitektur Android dapat dijelaskan sebagai berikut: a.

  Application dan Widgets Application 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. Hampir semua aplikasi ditulis menggunakan bahasa pemrograman Java [4].

Gambar 2.1 Arsitektur Android b.

  Application 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 resource, menjalankan service background, mengatur alarm, dan menambah status notifications, dan sebagainya. Pengembang memiliki akses penuh menuju API framework seperti yang dilakukan oleh aplikasi kategori inti. Arsitektur aplikasi dirancang supaya kita dengan mudah dapat menggunakan kembali komponen yang sudah digunakan (reuse).

  Sehingga bisa kita simpulkan Application Frameworks ini adalah layer dimana para pembuat aplikasi melakukan pengembangan/pembuatan aplikasi yang akan dijalankan di sistem operasi Android, karena pada layer inilah aplikasi dapat dirancang dan dibuat, seperti content providers yang berupa sms dan panggilan telepon [4]. Komponen-komponen yang termasuk di dalam Application Frameworks adalah sebagai berikut:

1. Views 2.

  Content Provider 3. Resource Manager 4. Notification Manager c.

  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 SSL, serta: a.

  Libraries media untuk pemutaran media audio dan video b.

  Libraries untuk manajemen tampilan c. Libraries Graphics mencakup SGL dan OpenGL untuk grafis 2D dan

  3D d. Libraries SQLite untuk dukungan database e.

  Libraries SSL dan WebKit terintegrasi dengan web browser dan security f.

  Libraries LiveWebcore mencakup modern web browser dengan engine embedded webview g.

  Libraries 3D yang mencakup implementasi OpenGL ES1.0 API’s. [4] d. Android Run Time

  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. Di dalam Android Run Time dibagi menjadi dua bagian yaitu: a.

  Core Libraries: Aplikasi Android dibangun dalam bahasa Java, sementara Dalvik sebagai virtual mesinnya bukan Virtual Machine Java, sehingga diperlukan sebuah libraries yangberfungsi untuk menterjemahkan bahasa Java/C yang ditangani oleh Core Libraries.

  b.

  Dalvik Virtual Machine: Virtual mesin berbasis register yang dioptimalkan untuk menjalankan fungsi-fungsi secara efisien, dimana merupakan pengembangan yang mampu membuat Linux Kernel untuk e.

  Linux Kernel Linux Kernel adalah layer dimana inti dari system operasi Android itu berada. Berisi file-file system yang mengatur sistem processing, memory, resource, drivers, dan sistem-sistem operasi Android lainnya. Linux Kernel yang digunakan Android adalah Linux Kernel release 2.6 [4].

1.2 Google Maps

  GoogleMaps adalah peta online atau membuka peta secara online, dapat

  dilakukan secara mudah melalui layanan gratis dari Google. Bahkan layanan ini menyediakan API (Application Programming Interface) yang memungkinkan developer lain untuk memanfaatkan aplikasi ini di aplikasi buatannya. Tampilan GoogleMaps pun dapat dipilih, berdasarkan foto asli atau peta gambar rute saja.

  GoogleMaps adalah layanan gratis yang diberikan oleh Google dan sangat

  popular. GoogleMaps adalah suatu peta dunia yang dapat kita gunakan untuk melihat suatu daerah seperti pada gambar 2. Dengan kata lain, GoogleMaps merupakan suatu peta yang dapat dilihat dengan menggunakan suatu browser. Kita dapat menambahkan fitur GoogleMaps dalam web yang telah kita buat atau pada blog kita yang berbayar maupun gratis sekalipun dengan GoogleMaps API.

  GoogleMaps API adalah suatu library yang berbentuk JavaScript.

  Cara membuat GoogleMaps untuk ditampilkan pada suatu web atau blog sangat mudah hanya dengan membutuhkan pengetahuan mengenai HTML serta

  

JavaScript, serta koneksi Internet yang sangat stabil. Dengan menggunakan

GoogleMaps API, kita dapat menghemat waktu dan biaya untuk membangun

  aplikasi peta digital yang handal, sehingga kita dapat fokus hanya pada data-data yang akan ditampilkan. Dengan kata lain, kita hanya membuat suatu data sedangkan peta yang akan ditampilkan adalah milik Google sehingga kita tidak dipusingkan dengan mambuat peta suatu lokasi, bahkan dunia.

Gambar 2.2 Google Maps

  Pada GoogleMaps API terdapat 4 jenis pilihan model peta yang disediakan oleh Google, diantaranya adalah: a.

  ROADMAP, untuk menampilkan peta biasa 2 dimensi.

  b.

  SATELLITE, untuk menampilkan foto satelit.

  c.

  TERRAIN, untuk menunjukkan relief fisik permukaan bumi dan menunjukkan seberapa tingginya suatu lokasi, contohnya akan menunjukkan gunung dan sungai.

  d.

  HYBRID, akan menunjukkan foto satelit yang diatasnya tergambar pula apa yang tampil pada ROADMAP (jalan dan nama kota). [5]

1.3 Location Based-Service (LBS)

  Salah satu ciri mobile phone atau tablet pc adalah portabilitas, sehingga tidak mengherankan bahwa beberapa fitur Android sangat menarik seperti layanan yang memungkinkan anda menemukan, mencari serta menvisualisasikan posisi kita ke dalam peta lokasi fisik seperti GoogleMaps. Kita dapat membuat peta berbasis GoogleMaps dan menjadikannya sebagai element dalam layout User Interface (UI) yang kita rancang. Kita dapat melakukan akses penuh ke peta GoogleMaps, dan memungkinkan kita untuk mengontrol pengaturan tampilan, mengubah tampilan zoom lokasi, dan memindahkan lokasi tampilan. [5]

  Location Based Service adalah service yang berfungsi untuk mencari location. Map dan layanan berbasis lokasi menggunakan lintang dan bujur untuk menentukan lokasi geografis, namun sebagai user kita membutuhkan alamat atau posisi realtime kita bukan nilai lintang dan bujur. Android menyediakan geocoder yang mendukung forward dan reverse geocoding. Menggunakan geocoder, anda dapat mengkonversi nilai lintang bujur menjadi alamat dunia nyata atau sebaliknya. [5]

  Location based service atau layanan berbasis lokasi adalah istilah umum

  yang digunakan untuk menggambarkan teknologi yang digunakan untuk menemukan lokasi perangkat yang kita gunakan. Dua unsur utama LBS adalah: a.

  Location Manager (API Maps) Menyediakan tools/resource untuk LBS, Application Programming

  Interface (API) Maps menyediakan fasilitas untuk menampilkan, memanipulasi maps/peta beserta feature-feature lainnya seperti tampilan satelit, street (jalan), maupun gabungannya. Paket ini berada pada com.google.android.maps. [5] b.

  Location Providers (API Location) Menyediakan teknologi pencarian lokasi yang digunakan oleh device/perangkat. API Location berhubungan dengan data GPS dan data lokasi realtime. API Location berada pada paket Android yaitu dalam paket android.location. Dengan Location Manager, kita dapat menentukan lokasi kita saat ini, Track gerakan/perpindahan, serta kedekatan dengan lokasi tertentu dengan mendeteksi perpindahan. [5]

1.4 Global Positioning System (GPS)

  GPS adalah singkatan dari Global Positioning System, yang merupakan sistem navigasi dengan menggunakan teknologi satelit yang dapat menerima sinyal dari satelit. Sistem ini menggunakan 24 satelit yang mengirimkan sinyal gelombang mikro ke bumi. Sinyal ini diterima oleh alat penerima (receiver) di permukaan, dimana GPS receiver ini akan mengumpulkan informasi dari satelit GPS, seperti: a.

  Waktu. GPS receiver menerima informasi waktu dari jam atom yang mempunyai keakurasian sangat tinggi.

  b.

  Lokasi. GPS memberikan informasi lokasi dalam tiga dimensi: 1.

  Latitude 2. Longitude 3. Elevasi c. Kecepatan. Ketika berpindah tempat, GPS dapat menunjukkan informasi kecepatan berpindah tersebut.

  d.

  Arah perjalanan. GPS dapat menunjukkan arah tujuan.

  e.

  Simpan lokasi. Tempat-tempat yang sudah pernah atau ingin dikunjungi bisa disimpan oleh GPS receiver.

  f.

  Komulasi data. GPS receiver dapat menyimpan informasi track, seperti total perjalanan yang sudah pernah dilakukan, kecepatan rata-rata, kecepatan paling tinggi, kecepatan paling rendah, waktu/jam sampai tujuan, dan sebagainya. [5]

1.4.1 Akurasi GPS

  Posisi yang ditunjukkan oleh suatu GPS mempunyai faktor kesalahan atau juga disebut tingkat akurasi. Sebagai contoh suatu alat GPS menunjukkan titik koordinat dengan tingkat akurasi 5 meter, itu berarti posisi pengguna bisa berada dalam range radius 5 meter dari titik yang ditunjukkan tersebut. [5]

  Mengapa tingkat akurasi yang terlihat bisa berubah-ubah? Kadang terlihat 10 meter, 15 meter, atau 5 meter. Ada beberapa hal yang mempengaruhi tingkat akurasi tersebut, antara lain: a.

  Kesalahan Ephemeris. Terjadi jika satelit tidak dapat mentransmisikan posisinya di orbit dengan tepat.

  b.

  Keadaan Ionosphere. Ionosphere berada pada jarak sekitar 43-50 mil di atas permukaan bumi. Satelit yang melewati ionosphere akan menjadi lambat dikarenakan adanya plasma (gas dengan tingkat kepadatan rendah). Walaupun GPS receiver berusaha untuk mengkoreksi/memperbaiki faktor keterlambatan yang terjadi tetap saja aktivitas tertentu dari plasma bisa c.

  Keadaan Troposphere. Troposphere adalah bagian terendah dari atmosfer sampai dengan ketinggian sekitar 11 mil dari permukaan tanah. Variasi pada temperatur, tekanan, dan kelembaban bisa menyebabkan perbedaan kecepatan penerimaan gelombang radio.

  d.

  Kesalahan Waktu. Karena penempatan jam atom pada setiap GPS receiver tidak berjalan sebagaimana mestinya. Kesalahan waktu dari GPS receiver yang tidak presisi dapat menimbulkan ketidakakurasian.

  e.

  Kesalahan Multipath. Terjadi karena sinyal satelit membentur permukaan keras (seperti bangunan atau tebing) sebelum mencapai GPS receiver. Hal tersebut bisa menyebabkan terjadinya delay sehingga perhitungan jarak menjadi tidak akurat.

  f.

  Buruknya Sinyal Satelit. Keadaan langit yang terhalang akan menyebabkan GPS sulit menerima data satelit. Sebuah sinyal satelit yang pada hari tertentu diterima dengan sangat bagus belum tentu pada hari lain bisa diterima dengan kualitas yang sama walaupun user berdiri pada tempat yang sama. Hal tersebut dikarenakan posisi dari satelit yang terus bergerak atau bisa juga disebabkan faktor penghalang lain seperti pohon, gedung bertingkat, dan sebagainya. [5]

1.4.2 Android Dan GPS

  Dewasa ini, teknologi berkembang dengan pesat. Dulu ponsel hanya sekedar digunakan untuk menelpon dan SMS saja. Sekarang ponsel sudah menjelma menjadi kotak kecil ajaib yang serba bisa. Salah satunya adalah ponsel dengan sistem operasi Android. [5]

  Dengan standarisasi fitur dan hardware yang dimiliki, menjadikan ponsel Android ponsel canggih yang disukai banyak orang. Tidak lagi canggih karena adanya fitur MMS, radio, atau internet berkecepatan tinggi tapi juga karena ditanamkannya fitur teknologi satelit di dalamnya. Ya, perangkat GPS receiver yang dulu besar dan eksklusif, sekarang sudah bisa dimiliki dengan “hanya” membeli sebuah ponsel. [5] Dengan ponsel berteknologi satelit (GPS), banyak hal yang bisa dilakukan. foto/video yang sudah dilengkapi dengan data koordinat? Ingin tahu jalur olahraga bersepeda yang sudah pernah user lalui? Atau ingin tahu dimana posisi ponsel yang hilang dicuri orang? Semua itu bisa dilakukan dengan ponsel Android yang memiliki fitur GPS. [5]

  Tidak hanya itu, user juga dapat pergi ke tempat wisata tertentu dengan dipandu gambar dan suara dari sebuah ponsel! Bahkan lebih jauh lagi, GPS dapat digunakan untuk membantu memberikan peringatan dini terhadap terjadinya bencana alam. [5]

  Sekarang ini banyak sekali pengembangpengembang aplikasi untuk sistem operasi Android termasuk aplikasi-aplikasi GPS. Yang menyenangkan aplikasi- aplikasi tersebut jenisnya beragam dan jumlahnya pun banyak. [5]

1.4.3 Latitude dan Longitude

  Latitude dan longitude adalah sebuah koordinat yang ada di bumi dan digunakan untuk menentukan kedudukan kita di atas bumi.

  1.4.3.1 Latitude Latitude adalah garis yang melintang dari kutub utara dan kutub selatan.

  Titik 0 adalah sudut ekuator, tanda + menunjukan arah ke atas menuju kutub utara, sedangkan tanda minus di koordinat Latitude menuju ke kutub selatan. Titik yang dipakai dari 0 ke 90 derajat arah kutub utara, dan 0 ke -90 derajat ke kutub selatan [6]

  1.4.3.2 Longitude Longitude adalah garis lintang. Angka dari sudut bundar bumi horisontal.

  Titik diawali dari 0 ke 180 derajat, dan - ke arah sebaliknya. Titik 0 dimulai dari garis negara Inggris. Mengarah ke Indonesia akan menjadi angka positif. Kebalikannya koordinat Longitude minus adalah arah kebalikan. [6]

1.5 Kompas

  Kompas adalah sebuah penunjuk arah mata angin yang didasarkan pada medan magneting bumi. Kompas pada android merupakan sebuah alat yang ysama seperti kompas pada umumnya dan menggunakan sensor posisi yang sudah ditanamkan pada perangkat itu sendiri.

  1.6 Basis data (Database)

  Basis data atau database adalah kumpulan data yang salaing berelasi yang disimpan dalam komputer secara sistematik sehingga dapat diperiksa menggunakan suatu program komputer untuk memperoleh informasi dari basis data tersebut. Perangkat lunak yang digunakan untuk mengelola dan memanggil (Query) basis data disebut Database Management System (DBMS), dan sistem basis data yang dipelajari disebut sistem informasi.

  Konsep dasar dari basis data adalah kumpulan dari catatan

  • – catatan, atau potongan dan pengetahuan. Sebuah basis data memiliki penjelasan yang tersimpan di dalamnya yang di sebut skema. Skema menggambarkan objek yang dimiliki oleh suatu basis data dan relasi(hubungan) diantaranya. Cara untuk mengorganisasikan skema di sebut Model Basis Data. Ada beberapa Model yang digunakan, akan tetapi yang umum digunakan sekarang adalah Model Relasional.

  1.7 Jaringan Internet

  Internet adalah suatu jaringan computer global yang terbentuk dari jaringan- jaringan computer local dan regional yang memungkinkan komunikasi data antar computer yang terhubung ke jaringan tersebut. Internet awalnya merupakan suatu rencana dari Departemen Pertahanan Amerika Serikat (US Department of

  

Defense) pada sekitar tahun 1960. Dimulai dari suatu proyek yang dinamakan

  ARPANET atau Advanced Research Project Agency Network. Beberapa universitas di Amerika Serikat diantaranya UCLA, Stanford, UC Santa Barbara dan University of Utah, diminta bantuan dalam mengerjakan proyek ini dan awalnya telah berhasil menghubungkan empat computer di lokasi universitas berbeda tersebut.

  1.8 MySQL MySQL adalah aplikasi SQL database server yang multi user. Oleh karena