location based service

39
Location Based Service : The Concept And Its Implementation Sidiq Permana [email protected]

Upload: edbert-liu

Post on 23-Feb-2017

612 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Location based service

Location Based Service : The Concept And Its

ImplementationSidiq Permana

[email protected]

Page 2: Location based service

Senior Android Developer Founder of Nusantara Beta T: @nouvrizky10 F : cdiq.sanz E : [email protected] M : 08569579148

Hi.. I’m Sidiq

Page 3: Location based service

You must be know these,,

Page 4: Location based service

Location Based Service (LBS) atau Layanan Berbasis Lokasi merupakan layanan informasi yang dapat diakses melalui perangkat mobile melalui jaringan selular dan memiliki kemampuan untuk memanfaatkan lokasi posisi perangkat mobile (Virrantaus et al. 2001)

Sebuah layanan IP – nirkabel yang menggunakan informasi geografi untuk memberikan layanan kepada pengguna perangkat mobile. Setiap layanan aplikasi yang memanfaatkan posisi terminal mobile (OpenGeospatial Consortium , 2005)

Definitions

Page 5: Location based service

Location Based Service (LBS) adalah sebuah nama umum untuk sebuah layanan baru dimana informasi lokasi menjadi parameter utamanya (Kupper, 2005)

LBS sebenarnya salah satu nilai tambah dari layanan seluler GSM. LBS bukanlah sistem, tetapi merupakan layanan yang menggunakan sistem tambahan penunjang sistem GSM. Jadi jelas, bisa jadi ada beberapa opsi sistem yang dapat mengirim layanan LBS ini dengan teknologi bervariasi. Tetapi pada dasarnya, sistem-sistem tersebut menggunakan prinsip dasar yang sama, yaitu: Triangulasi. Jadi prinsipnya, tidak jauh beda dengan sistem GPS, hanya saja fungsi satelit digantikan oleh BTS (Riyanto, 2011).

Definitions (Cont..)

Page 6: Location based service

Sebuah layanan yang memberikan informasi berdasarkan posisi pengguna (device) sebagai acuan utama.

Kesimpulan dari beberapa definisi

Page 7: Location based service

LBS Relation

Location Based Service merupakan kombinasi dari beberapa disiplin ilmu (Shiode et al 2004)

Page 8: Location based service

LBS Architecture

Page 9: Location based service

LBS Architecture (Cont)

Page 10: Location based service

Perangkat Mobile Jaringan Komunikasi Komponen Pengambil Posisi Provider Layanan dan Aplikasi Data dan Provider Konten WMS (Web Map Server)

Its main component

Page 11: Location based service

Kelebihan LBS, tetap berfungsi bila berada di dalam gedung dan pengaruh medan elektromagnetik lain yang tidak terlalu besar. Sedangkan, kekurangan LBS adalah jangkauan area yang sangat bergantung pada jangkauan selular (Riyanto, 2011)

The strenght and weakness

Page 12: Location based service

Pull Services Pengguna secara aktif mengirimkan informasi

yang dibutuhkan <user request>- Menggunakan service yang akan mendownload data dalam interval waktu tertentu

Push ServicesMemberikan informasi kepada pengguna yang mana

tidak secara langsung diminta oleh pengguna <system push to application>

e.g : Push Notification on Telkomsel

LBS Divided into 2 types

Page 13: Location based service

Haversine Formula adalah persamaan matematika yang penting dalam navigasi, formula ini memberikan jarak antara dua titik pada lingkaran bola dari masing garis bujur (Longitude) dan lintang (Latitude). Ini adalah kasus khusus dari formula yang lebih umum di trigonometri lingkaran bulat, haversine formula berhubungan dengan sisi-sisi dan sudut "segitiga" dari lingkaran bulat.

Konsep dasar rumus ini : TRIGONOMETRI Cari tempat/objek terdekat dari posisi yang

diberikan pengguna

Haversine Formula

Page 14: Location based service

The formulas

Dimana :Haversine adalah fungsi haversine haversin(θ) = sin2(θ/2) = versine (θ)/2D adalah jarak antara 2 pointR adalah radius dari lingkaran bulatφ1 adalah latitude dari point 1,φ2 adalah latitude dari point 2, andΔλ adalah kalkulasi 2 longitude

Page 15: Location based service

Pada sisi kiri tanda sama dengan, argumen untuk fungsi haversine adalah dalam radian. Dalam derajat, haversin (d / R) dalam rumus akan menjadi haversin (180 ° d / πR).

Kemudian dapat memecahkan untuk d baik dengan hanya menerapkan haversine invers (jika tersedia) atau dengan menggunakan arcsine (sinus invers) fungsi:

•Dimana : h is haversin(d/R)

Page 16: Location based service

Haversine formula digunakan untuk pencarian Point Of Interest (POI) terdekat dari posisi pengguna. Pemanfaatan umum haversine formula diantaranya (Rubin, MySQL AB) : ◦ Pencarian toko terdekat dari posisi anda◦ Social Network (Jejaring Social) : menemukan

teman terdekat dari posisi anda◦ Peta Online : pencarina POI (Point Of Interest)

menarik terdekat dengan anda

Page 17: Location based service
Page 18: Location based service

Converting haversine formula into SQL Syntax

R = earth’s radius Δlat = lat2− lat1; Δlong = long2− long1a = sin²(Δlat/2) + cos(lat1) * cos(lat2) * sin²(Δlong/2)c = 2*atan2(√a, √(1−a))d = R*c

ACOS( SIN(origin.lat* PI( ) /180 ) * SIN( O.latitude * PI( ) /180 ) + COS(origin.lat* PI( ) /180 ) * COS( O.latitude * PI( ) /180 ) * COS( (O.longitude – origin.lng ) * PI( ) /180 ) ) *180 / PI( ) ) *6371

Page 19: Location based service

SELECT id_, ( 6371 * acos(cos( radians($user_lat) ) * cos( radians( latitude ) ) * cos( radians( longitude ) - radians($user_longitude)) + sin( radians($user_lat) ) * sin( radians( latitude ) ) ) ) AS distance FROM table_name HAVING distance < 100 ORDER BY distance LIMIT 0 , 20

Detil on SQL SYNTAX

Page 20: Location based service

Local Directory ex : City Directory Mobile Commerce based on Location Based

Service ex : Kaskus FJB <with modified> Event directory Digital Advertising <promo based on location> Parental Control App Social Network Location Based Service based on Augmented

Reality (Like wikitude did) Etc…

So what could we make from this?

Page 21: Location based service

Obtaining User Location On Android Reverse Geocoding Building your own API Synchronizing between your app and your

API Show on the map

Step to implement LBS on Android

Page 22: Location based service

GPS Akurat, tapi lama mendapatkan koordinat dan

membutuhkan resource batere yang besar dan harus diluar ruangan yang tidak terhalang gedung

NETWORK BASEDUmum dan banyak digunakan, akurasi dibawah GPS, bisa digunakan di dalam ruangan dan cepat (Classic CID dan LAC)

AGPSKombinasi antara GPS dan Network Based, Cepat dan

Akurat

Obtaining User Location Mechanism On Android

Page 23: Location based service

Sudah di package dalam android.location dan pemanfaatan framework API LocationManager

The Providers : ◦ GPS◦ NETWORK◦ Using Criteria Class for BEST PROVIDER

Determining Power Use Accuracy Ability to return bearing, speed and altitude

Obtaining User Location Mechanism On Android (Cont…)

Page 24: Location based service
Page 25: Location based service

<manifest ... >    <uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />

<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION"></uses-permission>     ...</manifest>

Permission

Page 26: Location based service

Converting your latitude and longitude into the physical address, like street, city, country, state

How ?◦ We send the latitude and longitude to Google

Places API but it’s encapsulated on the Android location framework

Reverse Geocoding

Page 27: Location based service

Example

Page 28: Location based service

Using the web based Scripting language Such as : PHP, JSP, ASP, Ruby

Using familiar database : MySQL, postgreSQL Latitude and Longitude is important fields on your table Using framework is better (CI, RoR, .NET) Webservice Architecture <expert> like RESTFUL Generate the query response via JSON Request Using HTTP GET / POST METHOD Do it on Different Thread (Recommended using

AsyncTask) http://code.google.com/apis/maps/articles/

phpsqlsearch.html

Building Your Own API

Page 29: Location based service

Request : ◦ http://api.yourdomain.com/nearby.php?ll=-6.7896

5,106.786964 Response :

◦ [{“id”:”9808”,”name”:”Alfamart”, “latitude”:”-.687965”, “longitude”:”106.45643”},

◦ {“id”:”9804”,”name”:”Indomart”, “latitude”:”-.687965”, “longitude”:”106.45643”},

◦ {“id”:”9805”,”name”:”Alfa Midi”, “latitude”:”-.687622”, “longitude”:”106.67586”}]

Example (Non Framework)

Page 30: Location based service

Do this in Adapters and show on List (ListView)

Using JSONObject class Using JSONArray Class Example :

◦ JSONArray a = new JSONArray(res);◦ JSONObject b = a.getJSONObject(position);◦ Txt_name.setText(b.getString(“name”));

Fetching the response

Page 31: Location based service

Calculate distance between two points given

Page 32: Location based service

Generating API Keys besides your KEYSTORE◦ http://code.google.com/android/add-ons/google-api

s/mapkey.html Add this permission on the manifest :

◦ <uses-library android:name="com.google.android.maps" />

Using Map Activity Check and follow this basic tutorial

◦ http://agusharyanto.net/wordpress/?p=269 Try to use another map such as :

openstreetmap <it’s totally free>

Show on the map

Page 33: Location based service

Parsing this via Intent◦ http://maps.google.com/maps?

&saddr="+sourceLat+","+sourceLng+"&daddr="+destLatitude+","+destLongitude+"

Or follow this tutorial (Draw the direction on MapActivity)◦ http://agusharyanto.net/wordpress/?p=566

Show the directions?It’s so easy

Page 34: Location based service

Case … We will create the Mc Donald Directory In Jabodetabek

Purpose .. Give the user now the nearby outlet

Feature : Show on the list -> Detil -> on the map -> direction -> Checkin ?

Demo

Page 35: Location based service

Membuat aplikasi location based service itu tidak lah sulit semuanya sudah di provide sama Android

Kesimpulan

Page 36: Location based service

Combine this concept with your Idea.. Create the PRODUCT!!!!

So…. What will you do next?

Page 37: Location based service

Questions?

Thank you

Page 38: Location based service

Create functionality checkin Improve the UI

Challenge …

Page 39: Location based service

http://developer.android.com Proffesional Android Application

Development 1-3 By Reto Meier Beginning Android 3 By Mark Murphy Location Based Service Handbook by

Muhammad Ilyas Sistem Informasi GIS Berbasis Mobile by

Slamet Riyadi

References