• Aucun résultat trouvé

GPS and Localization Web Services Implementation over Android Modern Satellite Navigation

N/A
N/A
Protected

Academic year: 2021

Partager "GPS and Localization Web Services Implementation over Android Modern Satellite Navigation"

Copied!
11
0
0

Texte intégral

(1)

HAL Id: hal-01648484

https://hal.archives-ouvertes.fr/hal-01648484

Submitted on 26 Nov 2017

HAL is a multi-disciplinary open access

archive for the deposit and dissemination of sci-entific research documents, whether they are pub-lished or not. The documents may come from teaching and research institutions in France or abroad, or from public or private research centers.

L’archive ouverte pluridisciplinaire HAL, est destinée au dépôt et à la diffusion de documents scientifiques de niveau recherche, publiés ou non, émanant des établissements d’enseignement et de recherche français ou étrangers, des laboratoires publics ou privés.

over Android Modern Satellite Navigation

Mourad Henchiri

To cite this version:

(2)

Vol. 1 Issue 8, October – 2017, Pages: 220-229

GPS and Localization Web Services Implementation

over Android

Modern Satellite Navigation

Mourad M.H Henchiri

Lecturer: dept. of Information Systems University of Nizwa, CEMIS, Nizwa, Oman

Email: mourad@unizwa.edu.om

Abstract— Geographic and Location based Services through information systems offers diversified outputs and

many advantages to the mobile end-users to retrieve the information about their punctual and most accurate current location, then, all processes on the retrieved data reach to provide more useful information related to the surrounding and near locations. The A-GPS in smart phones of today and also through Web Services using a variety of service providers; whether satellite or terrestrial, lead location based Services to get implemented on Android based smart mobiles providing these value-added services (VAS): real current traffic conditions, real-time routing information, helping in finding nearby facilities and required services. We propose through this paper the implementation of Location based services via the Google Geo-Location Web Services and Walk Score Transit APIs over Android Phones giving varieties of services without restrictions to all users based on their real-time Location.

Keywords— Android Mobile Operating System, Location Based, Services, Web Services, A-GPS 1. INTRODUCTION

In recent years, the use of the Web has greatly affected the lives of many societies, especially in training. This has contributed greatly to the emergence of e-training, in light of the suffering of traditional training in general, many constraints and restrictions that limit its effectiveness at the international level and thus does not support the

It is an old concept, the matter of deploying the mobility of services through handsets and mainly the smart mobiles through which different providers deliver the valuable services and value added services (VAS); mainly we are interrested to the geo-location services providing implementation in this research. Also, here we must introduce the basic communication services that had been started in the early 1990s when Internet was added upon Voice Telephony.

The LBS, Location-based services, [1] refer to ―Every and each soft application with the capability to exploit the knowledge of the geographical position of a mobile device in order to provide services based on that information.‖

LBS (Location-based services) provide the personalized services to mobile clients according to their real-time physical Geo-location. Nowadays, they represent a new area for developers, operators on cellular service networks, and service providers to develop and provide VAS(value-added services): real-time solutions to traffic conditions, real-time routing information, besides of the valuable help given to the non-technical end-users to find nearby social services’ providers.

Numerous are the services and benefits generated upon the Location-based services offered to clients with mobility. For a mobile user, a list of main examples of location-based services [2] summarized in:

(3)

Vol. 1 Issue 8, October – 2017, Pages: 220-229

The most physical accurate Geo-location of the user in question can be determined by the mobile carrier hence it finds great use during Emergency since it can be used during the emergency/health hazard to locate the mobile clients.

b) Consumer behavior / Consumer Services deliverance

Nowadays, smart handsets OSs like (Android, Blackberry and iOS) provide a set of software applications and services which help the users to access variety of services based on the user physical location.

 Maps Navigation- The users can use the Microsoft Bing Maps or the Open Street Maps or the Google Maps to get to the particular location or to trace the route between any two locations.

 Marketing / Advertising- Many companies advertise their goods based on the physical location of the clients. For Example – Attractive Sales in Shopping Mall near to your current Geo-location.

 Location based Reminders- The mobiles might be used to be set as a reminder based on the physical location. For example - Setting the Location based Alarm while traveling between cities by bus.

 Preferred Location Search- The user can also initiate the search of any nearby service provider within 1/2/7/20 kms range from his current present location; the range distance here is open to any distance of coverage the user specifies.

Methodologies to implement LBS are mainly two[3]:

 Processing physical location data in a server and forwarding the generated response to the clients.  Finding physical location data for a mobile device-based software application that can be used directly. Real-time methodologies are applied to discover the position of the mobile using LBS. Trusted accuracies of the methodology depends on the approach used. Locations can be managed and represented in spatial terms or as text descriptions.

A spatial location [2] can be represented in the used latitude-longitude-altitude coordinate system. Where, Latitude is defined as 0-90 degrees north or south of the equator and the longitude as 0-180 degrees east or west of the prime meridian, that passes through the Greenwich, England. Then, the Altitude is represented in meters above sea level.

Textual description usually presented through street location, including city, pin code. The device’s location can be retrieved via-

i) Telecommunications Mobile Phone Service Provider;

Through the Base Transceiver Station (BTS) that the mobile phone is interacting with, a cellular is located, and also the location of that BTS is determined to the service provider. Here, technically and financially this is the most basic and cheapest methodology in this regard as it uses the location of the radio base station that the cellular is connected to.

A mobile cellular can be positioned anywhere in the circle of coverage with a diameter varying from 2 to 20 kilometers. With the cell ID more approaches can be achieved like location granularity within 150 meters. The granularity of location information is poor due to Wide Cell Range. The advantage is that no additional cost is attached to the handset or to the network to enable this service.

ii) Sat-Navigation; using satellites

GPSs or Global Positioning Systems use a constellation of 24 satellites orbiting the globe. GPSs find the user accurate position through calculating the differences in times the signals, from different satellites, take to reach the mobile receiver. GPS signals are decoded, so the smart phone must have in-built GPS receiver.

The nearest newly described technology in the field; nominated Assisted-GPS (A-GPS), for smart phones that integrates the mobile networks with the GPS to give a better accuracy; 5 to 10 meters. This sets the position within seconds, has better coverage and can be used inside the buildings with respect to the technical constraints, consumes less battery power and requires fewer satellites.

(4)

Vol. 1 Issue 8, October – 2017, Pages: 220-229 2. BACKGROUND

Recently, the smart phones OSs (Android, Black berry and iOS) have taken over the noticeable market of Nokia based Symbian Phones in different countries. And these smart phones by default state come equipped with A-GPS functionality which provides the spatial coordinates of the user location.

Devices with Android, the Network Location Provider determines user location using cell tower and Wi-Fi signals, providing location information in a way that works indoor and outdoor, responds faster, and uses less battery power.

A-GPS [6], or AGPS, improves the performance of standard GPS in devices connected to the wireless network. A-GPS ameliorates the location granularity of cell phones (and other connected devices) in two ways:

 When helping in finding a faster "time to first fix" (TTFF). A-GPS acquires and stores information about the location of satellites via the cellular network hence the information does not need to be downloaded via satellite.

 When helping position mobile handsets when GPS signals are not strong or absent. GPS satellite signals may be deployed over tall towers, and they do not penetrate building interiors well. A-GPS uses proximity to cellular towers to calculate location when GPS signals are weak or not available.

Addressing signal and wireless network problems by using assistance from other services, here, such a technology in our smart mobiles is able to assist in different ways like tracking current location, receiving turn-by-turn direction instructions, route tracking, and other soft activities.

Figure 1 Architecture of A-GPS System

For mobile devices, A-GPS suites and takes assistance from GPRS and at the same time, the telecommunication service provider network information, to pin-point the current location accurately. Moreover the amount of CPU and programming required for a GPS phone is minimized by diverting majority of the work to the assistance server.

A typical A-GPS enabled cell handset uses GPRS or other such Internet based data connection to build a contact with the assistance server for A-GPS. As this technique does not take into account the cell phone telecommunication service provider network in total, the user only pays for the GPRS usage charges and nothing else. The only down-side to this technology is that an A-GPS server cannot utilize any of the three standby satellites available for GPS connections.

(5)

Vol. 1 Issue 8, October – 2017, Pages: 220-229

As per the GPS it is a real-time solution provider whereas AGPS is not. The network usage is required every time we move out of the service area. It is useful only for locating a particular place in small area. In security terms, there is no privacy in GPS and A-GPS since the Assistance server knows the location of the handsets.

It requires to be a communication over the wireless for processing of GPS information which implies extra expenses to all end users.

3. IMPLEMENTATION AND METHODOLOGY

LBS; Location-based service, is another key functionality that gets deployed in smart phone applications. Often combined with maps to give a good experience to the user about their current physical location.

Platforms like Android supports LBS Application Programming Interfaces (APIs) [7]. Location service allows finding out the device physical location. The handset soft application can request for periodic update of the device location information. The application can also register a intent receiver for proximity alerts like when the device is entering and existing from an area of the given longitude, latitude and coverage circle radius.

1. Android Location API

Here we define the different classes that comes under Location API package to retrieve the user’s Location information.[7]

 LocationManager: Based on the criteria, the class provides access to the location service. It also provides facility to get the best Location Provider.

 LocationProvider: This is the super class for location providers, where every location provider provides periodic reports on the geographical location of the equipped device.

 LocationListener: This is a listener used for following and updating when location gets changed. Usually, a listener object is referred to after being registered with the location manager.

 Criteria: This class furnishes the considered application to choose suitable Location Provider by giving access to set of required properties of the LocationProvider.

Since the Android delivers an API to access the Google maps. So via the referral to the Google maps and the location APIs the application shows questioned places to the user on the geographical map.

2. Google Places API

It on 10th May, 2011, and at the Google I/O developer conference in San Francisco, Google released the general availability of the Google Places API.

The Google Places API [8] is a service that returns data about Places — how ever is there specificities; whether presented within this Web Service as a spatial locations or as preferred points of interest — using HTTP requests. Through this API, place response specifies locations as latitude/longitude coordinates. The four types of requests are available with the Google Places API, and here we summarized there definitions:

a) Place Searches - Returns an array of nearby Places based on a location defined by the user.

b) Place Check-ins - Allows the request that a person has checked in to a Place. Check-ins is used to gauge a Place's popularity; frequent check-ins will boost a Place's priority in application's Place Search responses.

c) Place Details - Returns more specific data about a user defined Place.

d) Place Reports - Allows the users to add new locations to the Place service, and to delete Places that the application has added to the database.

The Google Places API [8] presents limitations on the query processing, which we summarize here: Users are allowed only 1000 requests every 24 hours period which are having the API Key.

Clients who have also validated their identity through the APIs console are allowed 100 000 requests every 24 hours period.

(6)

Vol. 1 Issue 8, October – 2017, Pages: 220-229 1. Place Searches

This is an HTTP URL definite in the following mode [8]:

https://maps.googleapis.com/maps/api/place/search/output?arguments

Where output may be either of the following values

→ json shows the response in JavaScript Object Notation (JSON) → xml shows output as XML.

Table 1: Place Search API Arguments

Arguments

Description

Location

(required)

The latitude/longitude

about which place data is

to be found out. This

must be defined as

latitude, longitude.

Radius

(required)

Distance (in meters)

about which to show

results.

types (optional)

Limit the results to places

matching at least one of

the priorly defined types.

Types must be separated

with a pipe notation

(type1|type2|...).

Language (optional)

The language code, to

show in which language

the results has be shown,

when ever possible.

Name (optional)

A term to be mapped

against the names of

Places. Results will be

limited to those having

the argument name.

sensor

(required)

This value is either true

or false and it indicates

whether or not the place

request is from the device

having a location sensor

(like a GPS) to find the

location sent in this

request.

key (required)

Application’s API key.

(7)

Vol. 1 Issue 8, October – 2017, Pages: 220-229

available immediately.

2. Place Details [8]

This request returns detailed information about the user defined place such as its address, contact number, user rating…

At the time where the application has a Reference Number of a specific Place from Place Search Request, it can initiate the search about that place details.

Also here, the Place Details request is an HTTP URL definite in the following mode:

https://maps.googleapis.com/maps/api/place/details/output?arguements

→ json (recommended) shows the output in JSON → xml gives output as XML.

Table 2: Place Detail Web Service Arguments

Arguments Description reference

(required)

An identifier that defines uniquely a place, passed from

a Place search request. language

(optional)

The language code argument, shows the language of the

returned results. sensor

(required)

This is a true or false value which implicates the Place Details request is from the device having a location sensor

or not(like a GPS). key

(required)

Identifier; the application's API key. This identification is for

aim of quota management.

3. Public Transportation API [10]

This API from Walk Score gives the Transit Score for any location listed within its database and furnishes convenient access to nearby public transit stops.

We use the Public Transit Services when:  Adding Transit Score to the application.

 Viewing public transit stoppages on the output map.  Viewing the details about nearby transportation routes.

The generosity of the Public Transit API is that it has information database from over 200 public transit agencies in the all over globe.

 Stop Search API [10]

This API provides data about the stoppages of the public transport near a set location. This call returns 16 stops that service unique routes near the user set location. Each stop must bear a unique route.

For example, if there are 2 bus stops near a place, let’s say Tunis capital that only served the Route 23 bus, so, only the first stops are going to be returned by the stop search API call.

Table 3- Stop Search API Request Parameters

(8)

Vol. 1 Issue 8, October – 2017, Pages: 220-229

lat

Yes

The latitude

searching near.

lon

Yes

The longitude

searching near.

wsapikey

Yes

The application

Walk Score API

Key.

The response is returned in JSON or XML format with the following keys: Table 4- Stop Search API Response Keys

Key

Description

id

The stop's id. It might be

referred to for

further stop details.

lat

The stop's latitude.

lon

The stop's longitude.

name

The stop's name; most of

the time, this is the street

intersection.

distance

The stop's distance to the

search location point,

in miles.

summary_text

A text summary of the

stop, its distance to the

search location.

summary_html

A HTML summary of the

stop, might be added

directly to web pages.

route_summary

JSON array containing

routes related to this stop.

Example: To get 16 bus stops near a given Market place that service distinct routes, the application has to make the following request:

http://transit.walkscore.com/transit/search/stops/?lat=47.6101359&lon=122.3420567&wsapikey=key

We just presented the APIs responsible of providing Geo-located services based on the physical current location of the user.

4. SYSTEM TESTING

In an android application, we covered all the mentioned APIs and the application was tested using Samsung Galaxy Grand handset (which is A-GPS enabled handset).

Android Version – 4.4 (Eclair) Android Permissions:

android.permission.INTERNET

(9)

Vol. 1 Issue 8, October – 2017, Pages: 220-229

android.permission.ACCESS_COARSE_LOCATION

Figure 2: Places and Paths Search

(10)

Vol. 1 Issue 8, October – 2017, Pages: 220-229

Figure 4: Public Traffic lines API

5. CONCLUSION

LBS(Location Based Services) are tunned up nowadays, and are making life a joy to all end users of technology manifested in mobile smart handsets. Yet, the implementation of such technology faces a variety of constraints. Which include [1]:

 Technology Constraints

The next stage of the implemented and operational systems today is that they must face large scale coverage, mapping under the geographical information system (GIS), which needs to be more comprehensive than how it is definite today. This raises significant challenges for ameliorating the breadth and the depth of the existing coverage which is one of the main problems, the lack of spreading the wireless network into the countryside. In a developing country like Tunisia, the wireless technology is in very nascent stage as per the year 2017.

In metropolitan cities and areas, the problem of network congestion is also an issue to face. The services provided by operators not meeting the congestion rate benchmarks have risen substantially. As a concluding recommendation of this study, and grow the LBS, wide availability of cheap GPS enabled handsets is the key. GPS enabled handsets are being manufactured now days with increasing availability. The issue of cost remains to be tackled, since these phones are still all high-end units.

 Infrastructure Constraints

technology is a key, yet not to neglect the architectural designs which are from the main obstacles leading to the lack of spread of the wireless networks into the countryside.

 Market failure

structural aspects of the available markets has a direct impact on the LBS services provided to the end users in particular and to the VAS (Value-Added Services) activities in general. One of the main obstacles is the markets structure of the mobile industry and the failure to unleash the forces of competition. For the main success of the LBS the cross-network connections and interoperability are a must from all providers.

REFERENCES

[1] Location Based Services on Mobile in India For IAMAI - Version: 14 April 2008 http://www.iamai.in/Upload/policy/LBS_Draft_Indicus.pdf

(11)

Vol. 1 Issue 8, October – 2017, Pages: 220-229

[3] Location Based Services By Valerie Bennett http://www.ibm.com/developerworks/ibm/library/i-lbs [4] Android Wireless Application Development By Shane Condor and Lauren Darcy

[5] GPS Signal Acquisition and Tracking – An Approach towards Development of Software based GPS Receiver By Dinesh Manandhar, Yongcheol Suh, Ryosuke Shibasaki

[6] WebServices.org Home Page http://www.webservices.org

[7] Location Manager APIs– Android Developer

http://developer.android.com/reference/android/location/LocationManager.html [8] Google Places API http://code.google.com/apis/maps/documentation/places/

[9] Google Maps API http://code.google.com/apis/maps/documentation/imageapis/index.html [10] Walk Score Transit API http://www.walkscore.com/professional/public-transit-api.php [11] Google Geo Coding APIs http://code.google.com/apis/maps/documentation/geocoding

[12] Location Management for Mobile Devices, Erik Wilde (School of Information, UC Berkeley) -February 2008 http://dret.net/netdret/docs/wilde-irep08-016-mobile-location.pdf

[13] Query Processing in Mobile Environments: a Survey and open Problems N. Marsit, A. Hameurlain, Z. Mammeri, F. Morvan

[14] Location the Portal on positioning and navigation www.location.net.in [15] LBS Zone www.lbszone.com

Références

Documents relatifs

Applying this algorithm on both coordinates of the original problem leads to a linear time solution of the rectilinear minisum gridpositioning problem, after sorting along

In larger installations, services will register their services with one or more Directory Agents, and clients will contact the Directory Agent to fulfill requests for

TIP is a 2-pc protocol which is intended to provide ubiquitous distributed transaction support, in a heterogeneous (networked) environment. TIP removes the restrictions of

This allows the API library to simply take the returned attribute value list strings, URL strings, or service type list strings and call the callback function with it, without

While it is perfectly acceptable for a list identifier to be completely independent of the domain name of the host machine servicing the mailing list, the owner of a mailing

The Local Location Broker (LLB) is an RPC server that maintains a database of information about objects and interfaces located on the local host.. The LLB runs as the daemon

FOR COUNTRIES OFFERING TO BE HOST COUNTRY TO THE AFRICAN REGIONAL CENTRE FOR INDUSTRIAL DESIGN

This paper introduces the maximum availability service facility location problem, which integrates the set covering and flow capturing problems to service both stationary and