is also used to specify any location on the earthaccording to time, place and weather conditions bymeasuring the distance ...
Figure : Marmara GPS-Tracking Program4.1 Client SectionIn order to receive active location and placeinformation, registrat...
normal intents includes defined fixed strings atandroid.cantent.intent class [21].Broadcast Intents may be received one af...
Model–View–Controller (MVC) has a flow chart asshown below. In Model–View–Controller (MVC)the parts of data, code and view...
Figure : Marmara GPS MapJquery, is a open source library developed injavascript language. Due to its open source nature,it...
[14][15] Boğaziçi Üniversitesi Kandilli Rasathanesi D...
Upcoming SlideShare
Loading in …5



Published on

This article explains about Android Operating System little. Then shows how to built a GPS Tracker Program in Mobile and Web Platform

Published in: Technology, Business
  • Be the first to comment

  • Be the first to like this

No Downloads
Total views
On SlideShare
From Embeds
Number of Embeds
Embeds 0
No embeds

No notes for slide


  1. 1. THE DESIGN IN MOBILE AND WEB PLATFORM OF THE LOCATIONIDENTIFICATION APPLICATION WITH GPS SIGNALS AND ITSREPORTING PROCESS1İbrahim ÖZGÖN, 2Mesut KONAK, 3Ali BULDU, 4Kazım YILDIZ1,2,3,4Department of Technical Education Faculty, Marmara University Göztepe-İstanbul1e-mail: ibrahimozgon@gmail.com2e-mail: mesutkonak89@gmail.com3e-mail: objective of this project is to retrieve locationinformation from recent popular devices such assmart phones, navigation and some embeddedsystems and present this information to the user.Android OS, which is supported by Googlecompany and is also lately in wide use as a free andopen source operating system, and Javaprogramming language; were utilized within thescope of this Project for designing the mobileplatform. On the other hand NET technology ofMicrosoft Company, which has its root in past andstill continues to develop; was utilized in the webpart of this project. Moreover, patterns such asrepository and Model-view-Controller (MVC) wereincluded in the web platform. Finally theapplication of the developed project on variousdevices (smart phones, navigation) was explained.KEYWORDSMobile platforms, Android platform, GPS, WebService, .NET technologies, Google Maps, EntityFramework, Design patterns1 INTRODUCTIONAndroid operating system was designed for Linuxbased and primarily for touch screens (e.g. Smartphones and tablet computers) [1]. Android wasintroduced to the public in 2007 by Open HandsetAlliance which is a hardware, software andtelecommunication company alliance and whichdevoted itself to develop open standards for mobiledevices [2].The first Android phone was introducedto the market in October 2008 [3]. Android is opensource, in other words it is not developed under asingle firm as Windows operating system. The opensource codes of Android operating system arepublished under the license of Apache [4]. Aspeople all around the world are making acontribution to the development of Android, thissituation is pointed out to be the main reason for itsrapid growth.There is Dalvik Virtual Machine inside the Androidoperating system. Dalvik VM compiles applicationswhich are developed in java language and enablesthem to work in the operating system. Theapplications written in Android operating systemare developed in java programming language. Inorder to develop an application, AndroidDevelopment Kit add-on is required [10]. InOctober 2012 it was estimated that there wereapproximately 700,000 applications in Google PlayStore and 25 billion applications were downloaded[5-6].Android operating system has begun to bedeveloped in 2003 Palo Alto California by AndyRubin (founder of Danger) [7], Rich Miner(founder of Wildfire Communications Asc.) [8],Nick Sears (primary vice president in T-Mobile) [9]and Chris White (WebTV designer and interfacedeveloper). In August 2005 Google managed toincorporate in Android Inc. by holding shares.Android gained significant momentum with thisenterprise by Google.2 ANDROID APPLICATIONDEVELOPMENT ENVIRONMENTThe services used to develop Android applicationsare Java Development Kit, Android SDK, IDE.2.1 Java Development Kit(JDK)Java Development Kit (JDK) Java SE(StandartEdition), Java EE(Enterprise Edition ) and JavaME(Micro Edition) are kits which are aimed forapplication developers who design software forSolaris, Linux, Mac OS X ve Windows operatingsystems [11].2.2 Android SDKAndroid SDK API provides the required librariesand developer tools for creating tests and de-bugapplications.2.3 IDE(Recommended Eclipse)Eclipse, is an open source embedded developingenvironment. Although it’s main focus point is Javaand Java related technologies, thanks to itsflexibility it can be used for such languages as C,C++, PHP and Phyton.3 GLOBAL POSITIONING SYSTEM(GPS)GPS (Global Positioning System) is an satellite webwhich constantly transmits encoded data and which
  2. 2. is also used to specify any location on the earthaccording to time, place and weather conditions bymeasuring the distance between satellites [12].These are satellites that are controlled by earthlystations and transmitting radio signals which can bedetected by any GPS receivers.GPS satellites arelocated approximately 20.000 km away from theearth. All of these satellites belong to US DefenseDepartment. The first GPS satellite was launched in1978. GPS satellites were named after beingdivided in 4 sections. The first 10 satellites whichwere sent for development has been named “BlockI”. The 28 satellites launched between the yearsof1989-1997 were named “Block II”. The latestdeveloped 19 satellites belonging to this series hasbeen also named “Block IIA”.The 24 GPS satellitesthat complete the primary system were launched in1994.The third generation GPS satellites that arestill developed and that would replace the previoussatellites would be named as “Block IIR”. Newgeneration GPS satellites were launched in 2005. Itsaid that in near future the number of satelliteswould increase [13].Figure : GPS Communication [14]3.1 Specifying LocationThe system depends on the “back azimuth” ingeodesy. Back azimuth, includes observations andcalculations made from known location to unknownlocation. The known locations are GPS satellites.The unknown locations are earth fixes co-ordinates(X,Y,Z). In order to calculate the location of thereceiver on the earth, the GPS receiver comparesthe time that the signal is reached there andcalculates the distance of GPS to the receiver.Granted that the radio signals are travelling in lightspeed (radio signals are travelling nearly as fast asin the space); the distance of GPS to receiver can befound with the formula of Distance equals motionmultiplying time. [16]4 MARMARA GPS TRACKERMarmara GPS tracking system was presented as acontribution to developing technology by usingrecent popular technologies. It appeals to numerousbusiness and personal areas.Marmara GPS Tracking System program wasdesigned to operate mobile and web platformstogether and within each other. As the objective ofthe system is to inform two users who are in twodifferent locations, the Mobile platform has beendesigned addressing the travelling user and the webplatform has been designed addressing theobserving user. The observer here may also becomethe travelling user. In all cases it is not necessarythat a user observes the other.. The person whoinstalled the program on a device, can see his/herlocation along with its time on the Web platform.Figure : Marmara GPS Tracking System ProcessDiagramThe main outline of the program can besummarized as below:• The client section, sends the identified username, password and IMEI information toweb service and server, thus providesregistration to the system• Retrieving location information andsending data• Listening the condition of the phone andletting it close down• Listening in-calls, sending locationinformation to received calls• Recording location information to theserver via internet connection according tothe user defined intervals
  3. 3. Figure : Marmara GPS-Tracking Program4.1 Client SectionIn order to receive active location and placeinformation, registration of the program is required.This registration is realized when the program wasfirst installed. User name, password, e-mail addressand if there is an identified company number this isalso entered in the mssql server via web-service.Figure : Marmara GPS Tracking Program User DefiningScreen4.2. Retrieving location information andsending the dataIn order to constantly retrieve GPS information theobjects of location Listener and location Manager isused in the Android system. GPS_PROVIDER andNETWORK_PROVIDER methods can be usedover the Location Manager object.GPS_PROVIDER retrieves location informationfrom GPS satellite signals. The application requiresthe permission of android permission.ACCESS_FINE_LOCATION in the AndroidManifest file [17]. If there is no access to GPSsatellite, the location can be retrieved withNETWORK_PROVIDER through wirelessconnection. The application requires the permissionof android permission.ACCESS_COARSE_LOCATION or androidpermission ACCESS_FINE_LOCATION in theAndroid Manifest files [17]. Location objectsprocess the acquired information and transformthem into two values as longitude and latitude forthe programmer. If entered upon a supported map,these values show the location.When the application is closed and during the userdefined intervals in order to receive location andplace information and constantly keep theapplication working on the background; a service isrequired. Android services enable application tocontinue to work even if the background is closed[18].The acquired location information and IMEIinformation of the Android device are registered onthe database through web services structured byMicrosoft.Net. Web services which were structuredin net environment, are transformed into soapservices, namely classes and methods with a tool inthe internet environment. Thus these can be used inAndroid environment [19].The formed web service class and methods areimported into the project. Web services are formedin ksoap2 standards and are ready to be used inAndroid environment. “ksoap2-android jar” fileshould also be included in the project [20].4.3 Listening the state of the phone andletting it close downIn case of closing and re-opening of the phone,Marmara GPS application should re-start the serverand transmit the location and place informationwithin the defined interval. Status changes inAndroid platform are notified as system notificationto the user. Broadcast Intents that forms a specialintent group provides information to the applicationabout system changes. Broadcast Intents just as
  4. 4. normal intents includes defined fixed strings atandroid.cantent.intent class [21].Broadcast Intents may be received one after anotherby more than one receiver. It is also possible tosend Broadcast Intents inside the application. Yetthis case would be very rare. Since BroadcastIntents are send based on system, there is no reasonto send them based on application.Broadcast Intent Receivers only task is to wait forBroadcast Intents. These Receivers are active onlywhile component is working and only respond toparticular broadcast intents.Static Broadcast Receivers and declared onAndroid-Manifest file.Only the intent filter is defined. This filter ofBroadcast Receivers enable re-starts when thephone is opened.<receiver android:name=".OnBootReceiver"><intent-filter><actionandroid:name="android.intent.action.BOOT_COMPLETED"/></intent-filter></receiver>4.4. Listening in-calls, sending locationinformation to received callsIt identifies calls of the phone number which isalready defined in settings of the application andautomatically sends current location information inthe form of Short Message Service (SMS).Android-Manifest file waits for broadcast intentfiltration and only reacts to in-coming intent calls.<action android:name="android.intent.action.PHONE_STATE"></action>Figure : Marmara GPS Tracking Program SettingsScreen4.5 Recording location information tothe server via internet connectionaccording to the user defined intervalsLocation send intervals can be chosen from thesettings of Marmara GPS application. After theinstallation of the application it starts sendinginformation in 5 minutes intervals. In addition fromthe settings section; fields such as user name, e-mail address, password and company number maybe modified.4.6 Web PlatformThe second part of the Marmara GPS trackingsystem which is tracking on the web platform hasbeen developed in C# programming language thatis owned by Microsoft Company. The design of theproject was based on Model-view-Controller(MVC)ve Repository architecture.4.6.1 Repository PatternIn many applications, the business logic accessesdata from data stores such as databases, SharePointlists, or Web services. Directly accessing the datacan result in the following:• Duplicated code• A higher potential for programming errors• Weak typing of the business data• Difficulty in centralizing data-relatedpolicies such as caching• An inability to easily test the businesslogic in isolation from externaldependencies [22]4.6.2 Model-View-Controller (MVC) PatternThe ASP.NET MVC Framework is an opensource web application framework that implementsthe model–view–controller (MVC) pattern. [24]Figure : Marmara GPS Tracking
  5. 5. Model–View–Controller (MVC) has a flow chart asshown below. In Model–View–Controller (MVC)the parts of data, code and view are separate. Theprocesses are handled in separate areas; yet there isa perfect link between them.Repository pattern is frequently used in databasefocused projects. With Repository, the part whichreaches to data is moved to a completely new area.In this way the processes carried out with data andother processes can be handled in different areas.4.6.3 Design of the SystemFigure : Entity framework-Database tablesThe image shows the tables which are connected todatabase with entity framework. When the databaseis connected through entity framework, if desiredthe tables in the database can be used as models. Inthis way the registration is made easy and thedatabase table fields are directly inside the code.The process is carried out on the model and lastlythe necessary part is acquired through a connectionto the database.Figure : Repository and Model-View-Controller (MVC)patternThe main outline of the project is shown in theimage. Solution is constituted of two projects. Coreproject links to Repository pattern and enables datacommunication. Web project is structured onModel–View–Controller (MVC) pattern and formsthe site design, interface communication of theproject.Figure : Repository patternMarmara.GPS.Core project is shown in the image.Core project is communicates through EntityFramework with the database in cloud system andsends the data to Web project if desired.Marmara GPS Web project is shown in the image.Visual parts of the site and user form fields areformed in the Web project. Web project is inrelation with Core project and pulls out the datatransmits it to the user.Figure : Model-View-Controller (MVC) pattern.4.6.4 Jquery-UI Map
  6. 6. Figure : Marmara GPS MapJquery, is a open source library developed injavascript language. Due to its open source nature,it is improving rapidly. Jquery, providesconvenience in web forms to the programmer andalso provides visual forms to the user. In thisproject, users’ location information is retrieved andpresented to the desired person with “jquery-uimap”. The location information of desired time canbe reached with an integrated form on the map.5 CONCLUSIONSWith the developed application company or usercan monitor location information with the appinstalled in cell phone. Android application, afterasking for personal information in opening screencompletes the user registration and shows locationinformation with the user defined range. The entryinto the web site is provided with personalinformation of the user. In order to open a companyregistration in the site is required.With Marmara GPS Tracking application, it isaimed that the tracking costs of companyemployees and vehicles are reduced to minimum.The location can be specified with a Navigationdevice or a mobile phone that uses Androidoperating system without the necessity of anyadditional device. As an extra feature if the phonenumber is registered in the phone; when this deviceis called the location information is send by a textmessage. This case is crucial when internetconnection is not possible yet GPS signals can bereceived.REREFENCES[1] Elgin, Ben (17 Ağustos, 2005). "Google BuysAndroid for Its Mobile Arsenal". Bloomberg Businessweek. Bloomberg. Archived from the original on 24 Şubat2011. 20 Şubat 2012. "In what could be a key move in itsnascent wireless strategy, Google (GOOG) has quietlyacquired startup Android, Inc., ..."[2] "Industry Leaders Announce Open Platform forMobile Devices" (Press release). Open Handset Alliance.5 Kasım 2007. 17 Şubat 2012[3] "T-Mobile G1 Spec". Infosite and comparisons. GSMArena. 12 Ekim 2012.[4] "Android Overview". Open Handset Alliance. 15Şubat 2012.[5] "Google Play Matches Apples iOS With 700,000Apps".[6] "Google Play hits 25 billion downloads".[7] Markoff, John (4 Kasım 2007). "I, Robot: The ManBehind the Google Phone". The New York Times. 15Şubat 2012[8] Kirsner, Scott (2 Eylül 2007). "Introducing theGoogle Phone". The Boston Globe. Archived from theoriginal on 4 Ocak 2010. 15 Şubat 2012.[9] "T-Mobile Brings Unlimited Multiplayer Gaming toUS Market with First Launch of Nokia N-Gage GameDeck" (Press release). T-Mobile. 23 Eylül 2003. 15 Şubat2012.[10] Erişim tarihi 26 Nis. 13[11] "Java SE 7 Features and Enhancements". OracleCorporation. 1 Ocak 2013.[12], TheGlobal Positioning System, 10 Aralık 2008[13], GPSTutorial, 15 Aralık 2008
  7. 7. [14][15] Boğaziçi Üniversitesi Kandilli Rasathanesi DepremAraştırma Enstitüsü Jeodezi Ana Bilim Dalı, GlobalKonum Belirleme Sistemi(GPS), Kasım 2010[16] , GPS - UserSegment, 18 Ocak 2009[17][18][19][20][21][22][23][24]