Paper - TA raka - Digilib ITS - Institut Teknologi Sepuluh Nopember

advertisement
Perancangan dan Pembuatan Sistem Informasi Lokasi Friend Finder
Berbasis GPS pada Sistem Operasi Android
Muchammad Husni1, Raka Radifan2
Fakultas Teknologi Informasi,
Institut Teknologi Sepuluh Nopember (ITS), Surabaya, 60111, Indonesia
E-mail : [email protected], [email protected]
Abstrak
Pada tugas akhir ini, akan dibangun
sistem informasi lokasi pada suatu perangkat
bergerak berbasis sistem operasi Android yang
memungkinkan pengguna untuk mengetahui posisi
keberadaannya berdasarkan informasi lokasi dari
sebuah built-in GPS, lalu aplikasi ini juga
memungkinkan pengguna untuk berbagi koordinat
lokasinya dengan pengguna lain, selain itu aplikasi
ini memungkinkan untuk mengetahui alamat aktual
dari suatu koordinat lokasi, mengetahui posisi
pengguna lain, mengetahui jarak dengan pengguna
lain, dan menulis lokasi user pada status
Facebook.
Dalam tugas akhir ini, hal-hal yang
menjadi
permasalahan
adalah
bagaimana
mengambil lokasi user melalui GPS, bagaimana
menampilkan peta lokasi dalam aplikasi,
bagaimana berbagi lokasi dengan user lain, dan
bagaimana mendapatkan data dari server.
Dengan adanya permasalahan di atas,
maka akan dibangun suatu sistem informasi lokasi
dengan memanfaatkan perangkat bergerak
berbasis Android dan built-in GPS sehingga
handphone android bisa menikmati layanan
serupa.
Kata kunci: android, global positioning system
1. Pendahuluan
Perkembangan Teknologi Informasi yang begitu
pesat pada abad ini telah mempengaruhi pola hidup
masyarakat dalam menyelesaikan masalah dimana
kecepatan dalam mendapatkan informasi menjadi
prioritas yang tidak bisa dianggap kecil. Dengan
tuntutan yang seperti itu, diperlukan suatu
perangkat yang bisa digunakan untuk mengakses
informasi dengan mudah dan cepat. Handphone
merupakan suatu perangkat yang menjawab
tantangan tersebut.
Keberadaan sebuah handphone tidak bisa
dipandang sebelah mata. Pada dewasa ini,
handphone telah menjadi semacam kebutuhan
pokok dari masyarakat. Perkembangan teknologi
dan kesiapan dari penyedia layanan seluler telah
mengubah fungsi handphone yang sebelumnya
hanya sebagai alat komunikasi menjadi alat
komputasi yang memiliki sistem operasi layaknya
sebuah komputer.
Android merupakan salah satu sistem
operasi yang terdapat pada handphone. Sedangkan
java merupakan salah satu bahasa pemrograman
yang bisa digunakan untuk mengembangkan suatu
aplikasi yang bisa digunakan pada handphone
berbasis android. Keberadaan sistem operasi akan
memudahkan pengguna dalam mengatur file dan
menginstall aplikasi sehingga memberikan fungsi
lebih pada perangkat handphone tersebut.
Sistem informasi lokasi adalah suatu
aplikasi yang bertujuan menunjukkan keberadaan
seseorang. Pada umumnya teknologi yang
digunakan adalah Global Positioning System atau
yang biasa disingkat GPS. GPS bisa berupa piranti
tambahan atau bisa juga piranti terintegrasi pada
handphone. Dengan memanfaatkan Android SDK
dan sebuah GPS receiver, sistem informasi lokasi
bisa dikembangkan pada handphone berbasis
sistem operasi Android.
2. Dasar Teori
Bagian ini akan menjelaskan dengan singkat
tentang teori-teori yang digunakan untuk
menunjang tahap implementasi
2.1 Android
Android adalah sistem operasi untuk telepon
seluler yang berbasis Linux. Android menyediakan
platform terbuka bagi para pengembang buat
menciptakan aplikasi mereka sendiri untuk
digunakan oleh bermacam peranti bergerak.
Awalnya, Google Inc. membeli Android Inc.,
pendatang baru yang membuat peranti lunak untuk
ponsel.
Kemudian
untuk
mengembangkan
Android, dibentuklah Open Handset Alliance,
konsorsium dari 34 perusahaan peranti keras,
peranti lunak, dan telekomunikasi, termasuk
MAKALAH SEMINAR TUGAS AKHIR PERIODE MARET 2011
•
•
•
Google,HTC, Intel, Motorola, Qualcomm, TMobile, dan Nvidia. Pada saat perilisan perdana
Android, 5 November 2007, Android bersama
Open Handset Alliance menyatakan mendukung
pengembangan standar terbuka pada perangkat
seluler. Di lain pihak, Google merilis kode–kode
Android di bawah lisensi Apache, sebuah lisensi
perangkat lunak dan standar terbuka perangkat
seluler. Di dunia ini terdapat dua jenis distributor
sistem operasi Android. Pertama yang mendapat
dukungan penuh dari Google atau Google Mail
Services (GMS) dan kedua adalah yang benar–
benar bebas distribusinya tanpa dukungan langsung
Google atau dikenal sebagai Open Handset
Distribution (OHD)
Open Graph Protocol
Facebook Markup Language
Facebook Connect
2.3 Google App Engine
Google App Engine adalah platform untuk
mengembangkan aplikasi web dan hosting di pusat
data yang dikelola Google. Ini pertama kali dirilis
sebagai versi beta pada bulan April 2008.
Google App Engine adalah teknologi komputasi
cloud. Ini virtualisasi aplikasi di beberapa server
dan data center platform.
Platorm lain yang berbasis cloud seperti Amazon
Web Services dan Microsoft's Azure Services
Platform. App Engine berbeda dari layanan seperti
Amazon Web Services, meskipun, dalam AWS
adalah Infrastruktur sebagai service sedangkan
Platform App Engine adalah platform sebagai
service.
Fitur dan spesifikasi terkini dari OS Android,
anatara lain adalah framework aplikasi, dalvik
virtual machine, browser terintegrasi, grafik yang
dioptimasi, SQLLite, media support, telepon GSM,
Bluetooth, EDGE, 3G, WIFI, kamera ,GPS,
kompas,
akselerometer
dan
lingkungan
pengembangan yang sangat kaya.
Google App Engine gratis sampai tingkat tertentu
sumber daya yang digunakan. Biaya yang
dikenakan
untuk
penyimpanan
tambahan,
bandwidth, atau siklus CPU yang dibutuhkan oleh
aplikasi.
2.2 Facebook Platform
Facebook Platform menyediakan satu set API dan
tool yang memungkinkan developer pihak ke-3
untuk mengintegrasikan dengan "open graph" apakah melalui aplikasi di Facebook.com atau situs
web dan perangkat eksternal. Facebook Platform
telah berkembang dari yang hanya memungkinkan
pengembangan hanya di Facebook.com menjadi
mendukung integrasi di web dan perangkat
ekternal.
Saat ini, bahasa pemrograman yang didukung
adalah Python dan Java (dan, dengan perluasan,
lain JVM bahasa seperti Groovy, JRuby, Scala,
Clojure, Jython, dan versi khusus Quercus) .
Kerangka web Python yang berjalan di Google
App Engine memasukkan kerangka kerja GAME,
CherryPy, pylons, dan web2py, serta kerangka
webapp kustom Google-written dan beberapa yang
lain yang dirancang khusus untuk platform yang
muncul sejak dirilis. Google mengatakan
berencana untuk mendukung bahasa lebih banyak
di masa depan, dan bahwa Google App Engine
telah ditulis untuk menjadi bahasa mandiri. Setiap
kerangka Python yang mendukung WSGI
menggunakan CGI adapter dapat digunakan untuk
membuat aplikasi;. framework dapat di-upload
dengan aplikasi yang dikembangkan. Pihak ketiga
library yang ditulis dengan Python murni mungkin
juga upload.
Facebook platform menyediakan framework untuk
para software developer untuk membuat aplikasi
yang berinteraksi dengan core/inti fitur dari
facebook. Markup language yang disebut Facebook
Markup Language dikenalkan secara bersamaan,
digunakan untuk mengkustomisasi “look and feel”
dari aplikasi yang dibuat developer. Menggunakan
platform ini, facebook telah meluncurkan beberapa
aplikasi baru; termasuk Gifts, yang mengijinkan
user mengirimkanhadiah virtual kepada user lain;
Marketplace, yang mengijinkan user untuk
memposting iklan, event, memberi informasi
kepada user lain tentang event-event yang akan
diadakan, dan Video, yang mengijinkan user
membagi homemade vide kepada user lain.
2.4 Global Positioning System(GPS)
Global Positioning System (GPS) merupakan
sistem koordinat global yang dapat menentukan
koordinat posisi benda dimana saja di bumi baik
koordinat lintang, bujur, maupun ketinggiannya.
Teknologi ini sudah menjadi standar untuk
digunakan pada dunia pelayaran dan penerbangan
Komponen-komponen high level dari facebook
platform antara lain adalah:
• Graph API
• Authentication
• Social Plugin
2
RAKA RADIFAN – 5105100029
MAKALAH SEMINAR TUGAS AKHIR PERIODE MARET 2011
di dunia. Kita pun dapat memanfaatkannya untuk
kebutuhan kita sendiri.
koordinat yang diperoleh akan lebih terpercaya
serta akurasinya lebih baik.
Sistem GPS dapat memberikan data koordinat
global karena didukung oleh informasi dari 24
satelit yang ada pada ketinggian orbit sekitar
11.000 mil di atas bumi. Satelit-satelit tersebut
terbagi atas 6 bidang orbit yang berbeda dengan
masing-masing bidang orbit diisi oleh 4 satelit.
Dengan konfigurasi seperti ini, maka setiap titik di
bumi selalu akan dapat ditentukan koordinatnya
oleh GPS setiap saat selama 24 jam penuh perhari.
Teknologi GPS pada awalnya digunakan untuk
keperluan militer. Penyedia satelit untuk sistem
GPS untuk dunia adalah pemerintah Amerika
Serikat. Selain Amerika, dulu pihak Rusia/Uni
Soviet juga memiliki dan mengembangkan sistem
seperti ini. Kini pihak Uni Eropa juga berkeinginan
memiliki dan menyediakan sendiri sistem yang
sejenis.
Gambar 2.Error! No text of specified style in
document..1 Ilustrasi Prinsip Kerja GPS
3. Arsitektur Sistem
Bagian ini akan menjelaskan tentang
deskripsi umum sistem, arsitekur, perancangan
prototipe.
Teknologi GPS ini bebas dimanfaatkan oleh siapa
saja di dunia secara gratis asal memiliki alat GPS
receiver. Alat GPS receiver ini adalah suatu alat
yang dapat menerima sinyal satelit-satelit GPS
untuk kemudian melakukan perhitungan koordinat
posisi dirinya berdasarkan data yang ada.
3.1 Deskripsi Umum Sistem
Pada paper ini akan dikembangkan suatu sistem
informasi lokasi untuk geo-location sharing pada
handphone berbasis Android dalam hal ini yang
digunakan adalah Motorola Droid dengan
memanfaatkan gps built in. Dengan adanya aplikasi
ini,
pengguna
bisa
mengetahui
posisi
keberadaannya pada saat itu, melihat posisi
pengguna lain yang telah berbagi lokasi, berbagi
lokasi dengan pengguna lain, mengetahui alamat
aktual baik posisi pengguna sendiri maupun posisi
dari pengguna lain yang telah dicari sebelumnya,
mengetahui arah dari posisi pengguna ke posisi
pengguna lain yang telah dicari sebelumnya,
mengetahui jarak dengan posisi pengguna lain
yang telah dicari sebelumnya.
Setiap satelit GPS memancarkan sinyal-sinyal
gelombang mikro. GPS receiver menggunakan
sinyal satelit yang diterima untuk melakukan
triangulasi posisi dengan cara mengukur lama
perjalanan waktu sinyal dikirimkan dari satelit,
kemudian mengalikannya dengan kecepatan
cahaya untuk menentukan secara tepat berapa jauh
dirinya dari satelit.
Dengan mengunci minimum 3 sinyal dari satelit
yang berbeda, maka GPS receiver dapat
menghitung posisi tetap sebuah titik yaitu
koordinat posisi lintang dan bujur (Latitude dan
Longitude). Penguncian sinyal satelit yang ke-4
membuat pesawat penerima GPS dapat menghitung
posisi ketinggian titik tersebut terhadap muka laut
(Altitude).
Ketika GPS receiver sudah terhubung ke satelit,
maka handphone akan mengambil data lokasi
dengan format yang telah ditetapkan, pada tugas
akhir ini akan menggunakan format GPGGA
(Global Positioning System Fixed Data). Data yang
akan dimanfaatkan adalah data lintang(latitude)
dan bujur(longitude), sedangkan data lainnya
diabaikan. Untuk map, akan diunduh dari Google
Maps dengan memaanfaatkan teknologi GPRS.
Sedangkan untuk mengetahui lokasi user lain yang
berbagi lokasinya di database, handphone akan
menghubungi server dengan memanfaatkan HTTP
GET request ke server dengan mengirimkan
GPS receiver akan terus menjaga dan mengunci
sinyal satelit yang diperlukan untuk melakukan
triangulasi secara bersama dan paralel. Dengan
sistem ini, informasi navigasi yang diterima akan
selalu up to date. GPS receiver juga akan terus
mencari sinyal satelit sehingga mendapat 10
sampai 12 sinyal satelit sekaligus. Tambahan
channel sinyal satelit ini dapat diolah sehingga data
3
RAKA RADIFAN – 5105100029
MAKALAH SEMINAR TUGAS AKHIR PERIODE MARET 2011
yang ada di server, user dapat berbagi lokasi, dan
user dapat mencari lokasi suatu tempat yang
diinginkan sesuai dengan data yang terdapat di
server. Teknologi GPS untuk mendapatkan posisi
user, sedangkan teknologi GPRS menjadi
penghubung antara handphone dengan server untuk
mengambil data lokasi suatu tempat.
parameter berupa nama user yang dicari. Ketika
ada request dari client, server akan memberikan
response dengan mengirim data lokasi dari
pengguna yang dicari yang diambil dari database.
Sedangkan untuk fungsi lainnya untuk mengetahui
alamat aktual, arah, jarak didapatkan dari data
XML dari Google yang kemudian diparsing oleh
webserver yang mengambil data dari user facebook
yang kemudian hasil parsing tersebut dikirim ke
client tuntuk diolah.
3.2 Arsitekur
Implementasi pada Sistem Informasi Lokasi
Berbasiskan Android ini akan dikembangkan
dengan menggunakan bahasa pemrograman java
dan menggunakan Google Maps API dan Facebook
API yang telah memiliki banyak module sehingga
lebih memudahkan dalam pengembangan aplikasi
ini. Disamping itu, karena berbasiskan java, maka
Android tentunya memiliki semua kelebihan yang
dimiliki oleh bahasa pemrograman java.
Gambar 3.2 Komponen Komunikasi Jaringan
Gambar 3.1 Arsitektur Sistem
Dalam pembuatan aplikasi ini, Server yang
digunakan adalah Google Application Engine yang
juga sekaligus sebuah web hosting. Dalam hal ini,
server bertugas untuk menyimpan database lokasi
user dan memberikan data sesuai request dari user.
User bisa mengirimkan request menggunakan
fungsi cari posisi user lain.
3.3 Komponen Komunikasi Jaringan
Komponen ini yang yang terlihat pada gambar 3.2
mengatur bagaimana user dapat menjalankan
aplikasi
tersebut
dalam
hal
komunikasi
jaringannya, diantaranya adalah user dapat melihat
posisinya di map, user dapat mendownload map
4
RAKA RADIFAN – 5105100029
MAKALAH SEMINAR TUGAS AKHIR PERIODE MARET 2011
3.4 Komponen Server
sebagai server. Uji coba dilakukan di lingkungan
FTIF ITS Surabaya dan daerah rungkut Surabaya
Menggunakan 2 unit telepon selular.
Komponen ini mengatur bagaimana user dapat
berinteraksi dengan web server untuk berbagi
lokasi, mencari lokasi user lain,dll. Request dikirim
dengan memanfaatkan protokol HTTP. Dalam hal
ini, metode yang digunakan adalah POST. Server
yang digunakan dalam tugas akhir ini adalah
Google App Engine.
Teknologi GPRS akan menjadi media komunikasi
antara aplikasi client dan server. Dengan adanya
GPRS, client bisa mengirim request ke server
sebaliknya server bisa memberikan response sesuai
request dari client. Digambarkan seperti pada
gambar 3.3
Gambar 4.1 Arsitektur pada Lingkungan Uji
Coba
1. Web hosting (server)
a. Spesifikasi software:
i. Google App Engine
2. Telepon Selular Motorola Droid
a. Spesifikasi hardware:
i. ARM 11 600 MHz prosessor
ii. CDMA1X 800/1900
iii. EVDO rev A
iv. GPS support
v. MicroSD 8 GB
b. Spesifikasi software:
i. Android OS 2.2(Froyo)
3. Telepon Seluler LG Optimus One
a. Spesifikasi hardware:
i. 600 MHz prosesor
ii. GSM 850/900/1800/1900
iii. HSDPA
iv. GPS support
v. MicroSD 2 GB
b. Spesifikasi software:
i. Android OS 2.2(Froyo)
Gambar 3.Error! No text of specified style in
document..3 Komponen Server
4. Uji Coba dan Evaluasi
Pada bab ini akan dibahas mengenai uji coba dan
evaluasi perangkat lunak. Perangkat lunak ini diuji
coba dari segi fungsionalitas dan performa dalam
lingkungan uji coba. Di akhir bab diberikan
evaluasi terhadap hasil uji coba yang telah
dilakukan.
4.1 Lingkungan Uji Coba
Uji coba untuk aplikasi ini dilakukan dengan
menggunakan telepon selular yang berperan
sebagai client dan web hosting yang berperan
5
RAKA RADIFAN – 5105100029
MAKALAH SEMINAR TUGAS AKHIR PERIODE MARET 2011
4.2 Uji Coba Fungsionalitas
Uji coba ini dilakukan untuk melihat apakah fungsi
–fungsi dasar dari perangkat lunak ini berjalan
sebagai mana mestinya atau tidak. Hasil ujicoba
ditunjukkan dengan gambar –gambar Graphical
User Interface pada perangkat lunak ini.
Fungsi utama dari aplikasi ini yaitu berbagi lokasi
dengan user lain seperti pada gambar 4.3 di bawah
ini.
Uji coba fungsionalitas meliputi : login, lihat posisi
user, lihat posisi user lain, berbagi lokasi, cari user
lain, mengetahui alamat aktual, share posisi di
facebook, dan fungsi zoom, dll.
Pada aplikasi ini, pertama-tama dilakukan dengan
melakukan login dengan akun dari Facebook. Akan
tampil di screen halaman login seperti login di
facebook pada umumnya. User akan memasukkan
username dan password dari akun facebooknya dan
kemudian aplikasi akan melakukan otentifikasi.
Lalu Facebook akan meminta permission untuk
menjalankan aplikasi dari server. Seperti gambar
4.2.
Gambar 4.3 Tampilan Berbagi Lokasi
Aplikasi ini juga memiliki fitur untuk berbagi
lokasi dengan mengupdate status di facebook
seperti pada gambar 4.4 di bawah ini.
Gambar 4.2 Tampilan Login
Gambar 4.4 Dialog Box Status Facebook
6
RAKA RADIFAN – 5105100029
MAKALAH SEMINAR TUGAS AKHIR PERIODE MARET 2011
2.
Salah satu fitur dalam aplikasi ini yaitu melakukan
pencarian lokasi user lain, tampilan aplikasi ketika
mencari user lain seperti pada gambar 4.5berikut.
Penambahan fungsi upload foto lokasi
langsung ke facebook.
Gambar 4.5 Tampilan Mencari User lain
5.
Kesimpulan dan Saran
5.1 Kesimpulan
Dari hasil pengamatan selama perancangan,
implementasi, dan proses uji coba perangkat lunak
yang dilakukan, dapat diambil kesimpulan sebagai
berikut:
- Perangkat lunak yang diimplementasikan
telah berfungsi dengan baik.
- Dengan adanya OS Android dan teknologi
GPS maka dengan aplikasi ini user dapat
dengan mudah membagi lokasinya dan
mengetahui keberadaan user-user lain pada
map. Hal ini memudahkan dalam pencarian
user-user lain.
5.2 Saran
Saran-saran
yang
bisa
diberikan
untuk
pengembangan lebih lanjut mengenai sistem
informasi lokasi untuk geo-location sharing
berbasiskan Android antara lain :
1. Penambahan fungsi navigasi untuk
menuju lokasi user lain.
7
RAKA RADIFAN – 5105100029
MAKALAH SEMINAR TUGAS AKHIR PERIODE MARET 2011
6.
Daftar Pustaka
Google. (2007, april). Retrieved november
2010, from Android Developer:
http://developer.android.com
Facebook. (2007, Mei). Retrieved November
2010, from Facebook Developer:
http://developers.facebook.com/
Google. (n.d.). Retrieved november 2010, from
Google App Engine:
http://code.google.com/appengine/docs/
Burnette, E. (2010). Hello, Android Intoducing
Google's Mobile Development Platform
Third Edition. Pragmatic Bookself.
Wahono, R. S. (2003). ilmukomputer.com.
Retrieved october 2010 from
ilmukomputer.com:
http://www.ilmukomputer.com
Team of Android.com. (n.d.). Android.com.
Retrieved october 2010 from
Android.com: http://www.android.com
Raharjo, B., Heryanto, I., & Haryono, A. (2009).
Mudah Belajar Java. Bandung:
Informatika.
Darcey, L., & Conder, S. Sams Teach Yourself
Android Application Development.
Indianapolis: Sams.
Murphy, M. L. (2010). Beginning Android 2.
New York: Apress.
8
RAKA RADIFAN – 5105100029
Download