An Android Based Location Service Using Gsmcellid and Gps To Obtain A Graphical Guide To The Nearest Cash Machine

You might also like

Download as pdf or txt
Download as pdf or txt
You are on page 1of 5

An Android based location service using GSMCellID and GPS to

obtain a graphical guide to the nearest cash machine



Jurma Jacobsen, Stefan Edlich

TFH-Berlin, Online Learning Labs, Luxemburger Str.10, 13353 Berlin, Germany

ABSTRACT
There is a broad range of potential useful mobile location-based applications. One crucial point seems to be to make
them available to the public at large. This case illuminates the abilities of Android - the operating system for mobile
devices - to fulfill this demand in the mashup way by use of some special geocoding web services and one integrated
web service for getting the nearest cash machines data.
It shows an exemplary approach for building mobile location-based mashups for everyone: 1. As a basis for reaching
as many people as possible the open source Android OS is assumed to spread widely. 2. Everyone also means that
the handset has not to be an expensive GPS device. This is realized by re-utilization of the existing GSM
infrastructure with the Cell of Origin (COO) method which makes a lookup of the CellID in one of the growing web
available CellID databases. Some of these databases are still undocumented and not yet published. Furthermore the
Google Maps API for Mobile (GMM) and the open source counterpart OpenCellID are used.
The users current position localization via lookup of the closest cell to which the handset is currently connected to
(COO) is not as precise as GPS, but appears to be sufficient for lots of applications. For this reason the GPS user is
the most pleased one for this user the system is fully automated. In contrary there could be some users who doesnt
own a GPS cellular. This user should refine his/her location by one click on the map inside of the determined
circular region.
The users are then shown and guided by a path to the nearest cash machine by integrating Google Maps API with an
overlay. Additionally, the GPS user can keep track of him- or herself by getting a frequently updated view via
constantly requested precise GPS data for his or her position.
Keywords: Location Based Services, Android, Mobile Geo Mashup


1. INTRODUCTION

The way of using cellphones is changing. Using internet data connections along the way on cellphones in
conjunction with utilization of the available GSM infrastructure leads to the opportunity to develop applications
which are able to refer directly to the users current environment location based applications. The users current
geographic location can be determined by different kinds of mobile positioning techniques such as GPS or modern
Wi-Fi/W-LAN positioning. For the purpose of a rich application a powerful mobile platform is important. Here,
Android is assumed to be such a platform in the mobile sector. It is an open software platform and operating system
for mobile devices, based on the Linux kernel, originated by Google and supported through the Open Handset
Alliance.
Lets assume we know a given web offered address service. The given web offered address service here is a website
which determines the nearest cash machine addresses for a provided textual address as input parameters. The goal is
to use this service to build an Android based location service using GSMCellID and GPS to obtain a graphical guide
to the nearest cash machine. We will refer to Location Based Services with the abbreviation LBS in the following.


Multimedia on Mobile Devices 2009, edited by Reiner Creutzburg, David Akopian, Proc. of SPIE-IS&T Electronic Imaging,
SPIE Vol. 7256, 72560R 2009 SPIE-IS&T CCC code: 0277-786X/09/$18 doi: 10.1117/12.810141
SPIE-IS&T/ Vol. 7256 72560R-1


2. TECHNICAL ENVIRONMENT BASICS

This chapter outlines the characteristics of the Android platform and mobile positioning techniques in general.

2.1 Android and its support for LBS
The Android system is perhaps the most promising candidate of an open platform and operating system for mobile
devices beside the iPhone and its SDK. Android is being and will be developed by Google and the Open Handset
Alliance (OHA) and free contributors on the open source project
1
. The OHA is a business alliance of almost 50
firms including Google, HTC, Intel, Motorola, Qualcomm, Samsung, LG, T-Mobile and many more
2
. Android is
based on the Linux kernel and the application software is written in Java with the help of the Android SDK, a set of
development tools which can be seamlessly integrated into the Eclipse IDE via the Android Developer Tools(ADT)
plugin. The first official Android phone is the T-Mobile G1(HTC Dream), released to US market on October 22,
2008.
The Android SDK contains two optional APIs and one important class bearing potential reference to LBS. Optional
means that a given handset may not support them fully depending on to its hardware features. These APIs are the
Wi-Fi APIs and the API for Location-Based Services
3
. The Wi-Fi APIs provides almost all information from the
lower-level wireless stack that provides Wi-Fi network access comfortably.
The API for LBS is Androids primary support for building location-based services. It provides the ability to obtain
the phones location from a location provider such as GPS or A-GPS and is designed to be open for other location-
based systems which may come online. It contains two packages: android.location for managing such location
providers and getting standard and Reverse Geocoding through the Geocoder class. The other package is
com.google.android.maps for drawing and controlling well integrated Google Maps overlays. Accessing and
noticing of the phones current and possibly changing CellID and other important connection parameters such as
data connection state or signal strength is provide by the class android.telephony.PhoneStateListener .

2.2 Mobile positioning techniques
There are three different general techniques to locate a mobile device simplified described in the following to get an
idea of how mobile positioning can work:
1. Network based
Network based techniques utilizing the already available infrastructure GSM - to locate the mobile device. Every
active handset with a provider signal is at least connected to one radio cell with a unique number combination. The
simplest method for determining the location of such a mobile device is to get the mapping from this numbers,
specifically the CellID, to the geographic location of the broadcasting tower. This is also known as COO (Cell Of
Origin).
2. Handset based
The handset based approach is realized by specialized handsets which require special soft- or hardware to calculate
their positions. A mobile device with GPS would be a handset based method.
2. Hybrid
Hybrid based methods are using a combination of network based and handset based methods to locate the handset.
The best known method is A-GPS(Assisted Global Positioning System) which uses both the GPS signal and network
infrastructure information to determine the position while eliminating some of the disadvantages of normal GPS.
Currently different kinds of commercial hybrid positioning systems using W-LAN or Wi-Fi access points for quite
accurate positioning are being developed and used such as Navizon, SkyHook and GMM (Google Maps for Mobile).

SPIE-IS&T/ Vol. 7256 72560R-2












2.3 Freely available positioning web services
In addition to the fee requiring mentioned hybrid positioning techniques there are also some freely available CellID
web services. These web services enable developers to use it by sending HTTP-Requests to them. This request is
send with the current CellID among other parameters like MCC (Mobile Country Code), MNC (Mobile Network
Code), LAC (Local Area Code) and an application id. The HTTP-Response returns the CellID mapped geo
coordinates of the corresponding broadcasting tower. These APIs mainly consist of the database which provides the
mapping between a given CellID and its corresponding broadcasting tower geo coordinates. The Yahoo! ZoneTag
Location Services
4
and OpenCellID are two examples of such freely available CellID mapping services.
OpenCellID
5
is the open source alternate in this field. The efficiency of these free services depends on the level of
cell coverage. With enough entries they can be a real alternative to fee requiring solutions and may also offer
positioning accuracy enhancing triangulation techniques. This triangulation calculation can be implemented as an
advanced feature to this web services. They would add the CellIDs of the other cells to which the handset is possibly
currently connected to with each of its corresponding signal strengths as additional parameters to the method call of
the web service. The service would make the calculation and return the more accurate result.

3. THE ANDROID APPLICATION

Lets start inside the user scenario. The user is in an unknown district and pushes the button for showing the nearest
cash machines. The first step is to locate the users position via GPS or GSMCellID.

Fig. 1. Service Location Process

The application can use both GPS and CellID to locate its position. With the handset based positioning via an
integrated GPS module the positioning is accurate but may fail indoors, between tall buildings or in cloudy weather.
It can be accessed easily through the package android.location. If GPS is not available at the moment or is not
supplied through an integrated GPS module the application can work in CellID mode. It uses the access to the
current CellID and other needed information provided by the PhoneStateListener. At this point the application
makes use of one of the freely available positioning web services such as OpenCellID to request its current position.
With this information it is able to use the Google Services by means of the android.location.Geocoder class
to make the Reverse Geocoding it resolves the geographic coordinates into a textual address, for instance a street
address. Now it can provide our exemplary mashup web service for getting the nearest cash machine textual
addresses with its input parameters. The output of this service, the cash machine addresses, can be used with the
Geocoder class again to get the needed corresponding geo coordinates for it. Finally the application draws a
SPIE-IS&T/ Vol. 7256 72560R-3


















com.google.android.maps.Overlay on top of the com.google.android.maps.MapView and places tip
sensitive icons for the cash machine locations on the screen. This is shown in figure 1.


Fig. 2. Deployment Diagram of the Application

Figure 2 shows the Deployment Diagram of the exemplary application. We should think of the Mashup Service as
an exchangeable module in this model. Subsequently figure 3 shows the sequence of getting the nearest cash
machine with the option to get the route information.


Fig. 3.Getting The Nearest Cash Machine

4. PERSPECTIVE

The topic of mobile Location Based Services is progressing quickly and a lot of challenges and questions will be
solved and new ones will emerge. The following issues are trend-setting ones:
SPIE-IS&T/ Vol. 7256 72560R-4


4.1 Integrating other Web Services and Semantic Search
Current research is directed to two areas: 1) Gathering more user related information from Web-Services as REST
based services. 2) Combine all services as they could be semantically interconnected. One example could be user
profiles for interests: lets say cellphone user A is a snooker fan and cellphone user B as well. Both users are
connected via their friendship profiles (as done by popular instant messengers) and are fans of playing snooker. Both
users enter the same location area and thus receive messages that User B is near and also a snooker fan. You might
wish to contact him for a game?. Scenarios like this are difficult in security and filtering out useful information as
you might not wish to receive this message if you are currently swimming. But as profile and location information
integration gets better advanced semantic search engines can yield lots of useful services with a huge market
potential.

4.2 Androids development on the mobile market
Androids market introduction on the US mobile market was on 22nd of October 2008 with the T-Mobile G1 (HTC
Dream). Since then it was sold remarkably but it doesnt seem to be a competitor to the iPhone yet. We assume that
the mobile operating-system market will end up with a few operating systems while open source solutions will start
to cover at least a quarter of this market within a few years. The Symbian Nokia acquisition showed the need for free
operating systems for other vendors.

4.3 Chances for and through an free and open valuable CellID/Wi-Fi-Database
The chances for and free and open valuable CellID-Database/Wi-Fi-Database is also on the roadmap. We think the
the CellID Data could be a potential market and a new income for mobile companies. If the security problems will
be solved, it would be another potential market to sell location data. What is needed then is a clear de facto standard
in mobile positioning techniques. This would make commercial location services independent of the vendor and
might offer a wider market.

5. SUMMARY

In this paper we explored the possibilities of the integration of LBS with more customer services. We assume that
more and more applications like this will emerge o the Android Marketplace. There applications will contact Web
Services to obtain user related data that could be of interest for the cellphone user.
The application can be greatly enhanced if Google Maps yet beta feature Walking Directions
6
would become a
worldwide alpha and would be integrated into Android. This scenario seems to be quite likely to us, because this is
another chance for Google to be the first in this market with synergy effects of Google products.

REFERENCES
[1] Android open source project, http://source.android.com/
[2] Open Handset Alliance, http://www.openhandsetalliance.com/press_110507.html
[3] Optional APIs in Android, http://code.google.com/intl/de-DE/android/toolbox/optional-apis.html
[4] ZoneTag Location Services: Cell Location, http://developer.yahoo.com/yrb/zonetag/locatecell.html
[5] OpenCellID, http://www.opencellid.org/
[6] Google Lat Long Blog, http://google-latlong.blogspot.com/2008/07/pound-pavement.html

SPIE-IS&T/ Vol. 7256 72560R-5

You might also like