Graphical Guide

Embed Size (px)

Citation preview

  • 7/31/2019 Graphical Guide

    1/5

    An Android based location service using GSMCellID and GPS toobtain 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 makethem available to the public at large. This case illuminates the abilities of Android - the operating system for mobiledevices - to fulfill this demand in the mashup way by use of some special geocoding web services and one integratedweb 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 reachingas many people as possible the open source Android OS is assumed to spread widely. 2. Everyone also means thatthe 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 webavailable 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 isthe most pleased one for this user the system is fully automated. In contrary there could be some users who doesntown a GPS cellular. This user should refine his/her location by one click on the map inside of the determinedcircular region.

    The users are then shown and guided by a path to the nearest cash machine by integrating Google Maps API with anoverlay. Additionally, the GPS user can keep track of him- or herself by getting a frequently updated view viaconstantly 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 inconjunction with utilization of the available GSM infrastructure leads to the opportunity to develop applicationswhich are able to refer directly to the users current environment location based applications. The users currentgeographic location can be determined by different kinds of mobile positioning techniques such as GPS or modernWi-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 systemfor mobile devices, based on the Linux kernel, originated by Google and supported through the Open HandsetAlliance.

    Lets assume we know a given web offered address service. The given web offered address service here is a websitewhich determines the nearest cash machine addresses for a provided textual address as input parameters. The goal isto use this service to build an Android based location service using GSMCellID and GPS to obtain a graphical guideto 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

  • 7/31/2019 Graphical Guide

    2/5

    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 LBSThe Android system is perhaps the most promising candidate of an open platform and operating system for mobiledevices beside the iPhone and its SDK. Android is being and will be developed by Google and the Open HandsetAlliance (OHA) and free contributors on the open source project 1. The OHA is a business alliance of almost 50firms 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. Optionalmeans that a given handset may not support them fully depending on to its hardware features. These APIs are theWi-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 obtainthe 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 iscom.google.android.maps for drawing and controlling well integrated Google Maps overlays. Accessing andnoticing of the phones current and possibly changing CellID and other important connection parameters such asdata 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. Everyactive handset with a provider signal is at least connected to one radio cell with a unique number combination. Thesimplest 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 calculatetheir 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 quiteaccurate positioning are being developed and used such as Navizon, SkyHook and GMM (Google Maps for Mobile).

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

  • 7/31/2019 Graphical Guide

    3/5

    2.3 Freely available positioning web services

    In addition to the fee requiring mentioned hybrid positioning techniques there are also some freely available CellIDweb services. These web services enable developers to use it by sending HTTP-Requests to them. This request issend 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 geocoordinates of the corresponding broadcasting tower. These APIs mainly consist of the database which provides themapping between a given CellID and its corresponding broadcasting tower geo coordinates. The Yahoo! ZoneTagLocation 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 anadvanced feature to this web services. They would add the CellIDs of the other cells to which the handset is possiblycurrently 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 nearestcash 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 anintegrated 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 notsupplied through an integrated GPS module the application can work in CellID mode. It uses the access to thecurrent CellID and other needed information provided by the PhoneStateListener . At this point the applicationmakes 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 classto make the Reverse Geocoding it resolves the geographic coordinates into a textual address, for instance a streetaddress. Now it can provide our exemplary mashup web service for getting the nearest cash machine textualaddresses with its input parameters. The output of this service, the cash machine addresses, can be used with theGeocoder class again to get the needed corresponding geo coordinates for it. Finally the application draws a

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

  • 7/31/2019 Graphical Guide

    4/5

    com.google.android.maps.Overlay on top of the com.google.android.maps.MapView and places tipsensitive 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 asan exchangeable module in this model. Subsequently figure 3 shows the sequence of getting the nearest cashmachine 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 besolved and new ones will emerge. The following issues are trend-setting ones:

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

  • 7/31/2019 Graphical Guide

    5/5

    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 areconnected via their friendship profiles (as done by popular instant messengers) and are fans of playing snooker. Bothusers enter the same location area and thus receive messages that User B is near and also a snooker fan. You mightwish to contact him for a game?. Scenarios like this are difficult in security and filtering out useful information asyou might not wish to receive this message if you are currently swimming. But as profile and location informationintegration 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 (HTCDream). Since then it was sold remarkably but it doesnt seem to be a competitor to the iPhone yet. We assume thatthe mobile operating-system market will end up with a few operating systems while open source solutions will startto cover at least a quarter of this market within a few years. The Symbian Nokia acquisition showed the need for freeoperating systems for other vendors.

    4.3 Chances for and through an free and open valuable CellID/Wi-Fi-DatabaseThe chances for and free and open valuable CellID-Database/Wi-Fi-Database is also on the roadmap. We think thethe 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 standardin mobile positioning techniques. This would make commercial location services independent of the vendor andmight offer a wider market.

    5. SUMMARY

    In this paper we explored the possibilities of the integration of LBS with more customer services. We assume thatmore 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 aworldwide alpha and would be integrated into Android. This scenario seems to be quite likely to us, because this isanother 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