Home

TRIP TRACKER APPLICATION ON ANDROID

image

Contents

1. rendering and caching of Maps tiles as well as a variety of display options and controls The key class in the Maps package is com google android maps Map View a subclass of ViewGroup A MapView displays a map with data obtained from the Google Maps service When the MapView has focus it will capture key presses and touch gestures to pan and zoom the map automatically including handling network requests for additional maps tiles It also provides all of the UI elements necessary for users to control the map A LocationListener 14 is the interface implemented to receive location updates To use Google Maps in the application a Maps API key had to be obtained to register with the service and Android system had to be notified that the application wishes to implement the 13 add on Google APIs which are external to the base APIs This was done by using the uses library element in the Android manifest file informing Android that the application used classes from the com google android maps package This application also uses Map Overlays to portray to the users the various locations visited and a short description of each This is done by creating Map markers and lay overs This has been possible by using ItemizedOverlay class to manage all the individual items placed on the map MapActivity is the spacing activity defined to show Google Maps Map View is the view that supports and displays the map This is contained in the Map Activity Ut
2. 3 4 5 Data Storage The data storage options which the Android supports Shared Preferences Internal Storage External Storage SQLite Databases and Network Connection Trip tracker uses Internal storage External Storage and SQLite databases for storing persistent application data By default the application once installed is stored in the internal storage of the Android system This is private to the application and other applications cannot access it When the user uninstalls the application these files get removed Since every Android compatible device supports a shared external storage to save files this application uses Secure Digital SD card to store the images captured External storage are open to the public and can be read by all who can access it It can be modified by the user when connected to a computer and the mode is set to USB Mass Storage which allows transferring files Android also provides full support to SQLite databases All databases that are created in the application are accessible by name to any class in the application but none outside This is implemented by creating a sub class to SQLiteOpenHelper 16 and overriding the onCreate method to execute the SQLite command to create the tables in the databases The methods getWritableDatabase 16 and getReadableDatabase 16 are called for write to and read from the database which return SQLiteDatabase 16 object The Android SDK includes a sqlite3 database to
3. Figure 5 2 Figure 5 3 Figure 5 4 Figure 5 5 Figure 5 6 Figure 5 7 Figure 5 8 Figure 5 9 viii LIST OF FIGURES PAGE Top smartphone platforms veria rinda iones sien 4 TOS VET SU SATION tt 5 Fragmentation cost of application development cee eeeesseesteceeeeeeeeeeneeeaeenes 6 Application s overview design 623 ict ora Aintoaseeale uivtetiwt pnctiedoas aerate sil aes 9 Application s high level Overview design cccesscccesececeeeeeceeeeecseeeeeeeeeeesaeeeenes 10 Model view controller COnCE pt s c ssccsssesccsvscasdacavevaiassscesesaaa dsdacevenacceds stc dadas 12 Displaying the workflow diagram with all the class files 0 eee eeeeeeeeeeeeeees 15 INNS TENTS TS AU Saco aa aa aa a pa Aa ag a a a aa a a a Nn a Gan a E a aana 16 Trip AGS SOK TAD india iaa 17 Map VIEW CAD sas aas an aa gg A a Arete SENG E KN GA A a Aa Ga E A Ga GN a NE aa a aaa 18 Recorder tab ag eee e a ag do i oe 19 Installation from unknown Source coooocccocononononnnoonnnonnnono nono nn anna anan ccoo n anane nana n e 22 Step 1 to create a New Trip tai a 23 Step 1 to create a New Trip Divinidad indi irene 23 Step 2 on displaying the trips in list ViEW oooocconicnnoninnccnncncnnonconnonnonnnrccnnrnconnnnos 24 Step 3 on clicking the record tab Aids 24 Step 4 the locations visited diiniita diia dile 24 Step 5 on clicking the map tab sio ii ito 25 Step 6 on clicking a MAKE nenen ae anane nana e anana nean anana anana nana nana an
4. manual installation the following instructions should be followed e Check if you are in HOME screen e Click on Menu button e Select Settings e Click on applications e Check the option for Unknown Sources Now the application will be installed on to the device 5 4 USING THE APPLICATION ON DEVICE A first time user needs to select the New Trip button to kick off the application and enter the first record in the database Initially the database in empty and shows no trips 5 5 CREATING A NEW TRIP Creating a New Trip can be done in two ways 1 Tap on the Edit box provided next to the CREATE button Enter the name of the trip and click on Create see Figure 5 2 2 Click on the CREATE button an alert box pops up Enter the Trip Name in the pop up edit box and save the name see Figure 5 3 23 3B 3 Ea 6 20 AT amp T O g3S Ga 6 20 AT amp T OY Trip Tracker CREATE Enter New Trip Cancel Figure 5 2 Step 1 to create a Figure 5 3 Step 1 to create a New Trip a New Trip b Once the Trip Name is saved it can be seen in the list view see Figure 5 4 This list view displays all the trips you have created To add the contents to the Trip click on the Trip Name The new view with three tabs can be seen the Trip Map and Record These tabs will represent the trip To start recording the trip click on the Record tab to start the GPS activity to capture your current location Enter the loc
5. rectangular area of the screen in which it resides As an object in the user interface a View is also a point of interaction for the user and the receiver of the interaction events The Android UI toolkit offers several layout managers that are easy to use to implement an user interface This application employs Linear Layout Frame Layout and Relative Layout Linear Layout wraps the TextView EditText ListView and Buttons MapView exploits Frame Layout and Relative Layout is used in Trip Logger Activity for displaying the various locations in the trip The Android UI framework is organized around a Model View Controller pattern It provides structure and tools for building a Controller that handles user input like key presses and screen taps and a View that renders graphical information to the screen The Model is the soul of the application what it actually does The View is the application s feedback to the user The graphical portion of the Android UI framework s View is implemented as a tree of subclasses of the View class Graphically each of these objects represents a rectangular area on the screen that is completely within the rectangular area represented by its parent in the tree The Controller is the portion of an application that responds to external actions a keystroke a screen tap an incoming call etc It is implemented as an event queue Each external action is represented as a unique event in the queue The framework removes e
6. the arrival of various new kinds of gadgets in the form of smartphone camera phone Android and tablet phones In fact the handset industry has turned from simple budget handsets to ultra modern high end mobile phones Today s device is almost everything it is fashionable innovative appealing high performing durable stylish and multi tasking Latest gadgets can be used for various purposes like browsing mobile internet playing games emailing blogging messaging and accessing all popular social networking sites like YouTube Google search Gmail and more Along with this there has been a booming market for the multimedia mobile phones Modern gadgets are coming with built in cameras which enable users to capture photos print them and finally upload them on to Facebook YouTube and other social networking sites These devices pack music players FM radio and come pre loaded with amazing games Thus they are both entertainment as well as talking devices With the rise of mobile phone applications so called apps people today are more looking for information on the go This is one area of mobile phone technology enhancement that allows developers and programmers to offer users just what they seek under their preferred area of interest Google s Android is one of the latest and unique innovations which instantly has taken over the mobile market It is an open source mobile platform which allows developers from around the world to develop
7. 8 to edit the the details details of the location 27 CHAPTER 6 DISCUSSION 6 1 FUTURE ENHANCEMENTS This thesis project is developed as a beginner application for trip logging It can be further developed to provide a richer user experience Trips saved can be shared to all friends through email This would help to share the trips and trip details with the images to your friends The real time updates can be provided to your friends as and when a location is recorded in the trip This would help to provide dynamic information as you travel to all your friends and family to keep you tracked Also provision to upload more pictures can be provided to capture more memories and share them There is also no option to delete or change the image captured before This should also be implemented Multimedia features can be enhanced to upload a video Since only images are supported now video can add to a richer user experience Efforts to provide live navigation also can be included to re visit the already listed trip 6 2 CONCLUSION The motivation of this thesis project is to build an Android based application for providing a simple trip journal for the users and to capture their memories of the trip By using Android SDK and Eclipse IDE as the development environment the application is built keeping in mind about the design standards and maintainability of the code Trip Tracker makes use of GPS and multimedia features of the And
8. Aug 12 2010 Android Developers SQLiteOpenHelper 2010 http developer android com reference android database sqlite SQLiteOpenHelper ht ml accessed Oct 24 2010 Android Developers LocationListener 2010 http developer android com reference android location LocationListener html accessed Aug 12 2010
9. I s facilitate to access the contents on the phone such as contacts and calendar information and also integrate them with external web service in order to provide online services 3 3 COMPONENTS OVERVIEW Trip Tracker is an Android application to create a mini travel journal This app allows you to add extra data to your pictures to associate them with the places where they were taken the possibility to add GPS coordinates to photos and organize them Figure 3 1 shows the flow of the Activity to create a new trip Trip Trip Recorder Trip Logger Map View Image Capture Figure 3 1 Application s overview design To create a new trip the user selects New Trip this loads to a TabActivity displaying three tabs Trip recorder Trip logger and Map view Each tab leads to a different activity Trip Recorder triggers the GPS activity and captures the current location This also provides the user to specify the location name capture a picture and write a short description of that place Trip Logger shows the list of the places visited with their respective addresses also displaying the short description If a particular location is selected it loads into the editing activity enabling the user to modify any of the parameters Map View displays the location points on a regular map for the user to easily locate them with route overlays Once clicked on the location point it displays the details of the location like the loca
10. TRIP TRACKER APPLICATION ON ANDROID A Thesis Presented to the Faculty of San Diego State University In Partial Fulfillment of the Requirements for the Degree Master of Science in Computer Science by Siddartha Sreenivasa Reddy Summer 2011 SAN DIEGO STATE UNIVERSITY The Undersigned Faculty Committee Approves the Thesis of Siddartha Sreenivasa Reddy Trip Tracker Application on Android Josep ae seph Lewis Chair Department of Computer Science Ma Houad Kris Stewart Department of Computer Science arabic 4 YA Macera Graduate School of Public Health E ho zon Approval Date Copyright 2011 by Siddartha Sreenivasa Reddy All Rights Reserved 111 DEDICATION This work is dedicated to my Parents iv ABSTRACT OF THE THESIS Trip Tracker Application on Android by Siddartha Sreenivasa Reddy Master of Science in Computer Science San Diego State University 2011 Travel has always been a man s best pass time a method to rejuvenate from the daily stress a break from the monotonous life and to experience the thrill of adventure Until the last decade camera was a traveler s best friend but little did we know things are going to change a lot better In today s world life is always on the move With the advancement of technology smart phones today have immense capabilities to provide rich user experience with interactive facilities Trip Tracker is an Android based a
11. ach event from the queue in order and dispatches it Figure 3 3 shows MVC concept model 13 When an external action occurs for example when the user scrolls drags or presses a button a call comes in or an MP3 player arrives at the end of its playlist the Android system enqueues an event representing the action on the event queue Eventually the event is dequeued first in first out and dispatched to an appropriate event handler The handler 12 Update gt MODEL _ Invalidate AA A CONTROLLER JAN ba KE VIEW Z N Key press taps Ji Re draw lt Figure 3 3 Model view controller concept Source Rick Rogers and John Lombardo Android Application Development 2009 http androidapps org ua i_sect13_d1e11121 html Android GUI Architecture accessed Aug 2010 responds to the event by notifying the Model that there has been a change in state The Model takes the appropriate action 3 4 3 Location and Maps Android application can access the location services supported by the device through the classes in the android location package and the Google Maps external library The main component of the location framework is the LocationManager 14 system service which provides APIs to determine location and bearing of the underlying device Google provides a Maps external library that includes the com google android maps package The com google android maps package used in this application offered built in downloading
12. adeer and Archana Gupta IEEE location based services using Android Proceedings of the 2009 IEEE International Conference on Internet Multimedia Services Architecture and Applications IMSAA Bangalore India 2009 Carissa Richardson The Rise of Location Based Applications 2011 http blog fahlgrenmortine com 201 1 02 the rise of location based applications accessed Apr 2011 Israfil Coskun and Osman Celik Challenges of Mobile Application Development 2010 http developer smartface biz challenges of mobile application developement n74 html accessed Dec 2010 Wikipedia org Android Operating System 2011 http en wikipedia org wiki Android_ operating_system accessed Mar 2010 Android Developers What is Android 2011 http developer android com guide basics what is android html accessed May 2010 Android Developers The AndroidManifest xml File 2010 http developer android com guide topics manifest manifest intro html accessed Jun 2010 13 14 15 16 17 30 Rick Rogers and John Lombardo Android Application Development 2009 http androidapps org ua i_sect13_dle11121 html Android GUI Architecture accessed Aug 2010 Android Developers Android Location Package 2010 http developer android com reference android location package summary html accessed Aug 2010 Android Developers MediaStore 2010 http developer android com reference android provider MediaStore html accessed
13. applications for Android supported mobile devices Android supports to develop a location aware application utilizing Global Positioning System GPS and Android s Network Location Provider to acquire the user location Although GPS is most accurate it only works outdoors it quickly consumes battery power and doesn t return the location as quickly as users want Android s Network Location Provider NLP determines user location using cell tower and Wi Fi signals providing location information in a way that works indoors and outdoors responds faster and uses less battery power To obtain the user location in the application both GPS and the Network Location Provider can be used or just one Ten billion apps have been downloaded in the past three years There are 17 000 location based travel apps on the market and 160 million app compatible devices are owned worldwide iPhones Androids BlackBerrys and tablet devices such as the iPad and Motorola Xoom 1 There are apps that can make our holidays a little easier a bit more fun and more memorable They let you do anything you can do online or with a guidebook but more quickly and easily and while you re on the move with maps and GPS to tell you where you are and capture wonderful memories This research is based on development of a user friendly Android based application called Trip Tracker This is one such social travel mapping application designed to organize and store memories of
14. ation and sends it to the mobile phone user and the communication center that can be used for various location based services So in nutshell LBS is a wireless service that determines the location information of the information device mobile user by using Geographical Information System GIS and other satellite navigation platform With the proliferation of mobile email and mobile browsing the growth of multimedia messaging mobile music social networking and even location based services mobile is indeed the next wave for travel related services Apps for mobile enabled services are increasingly rooted in every day s life and travel habits 2 3 CHALLENGES IN MOBILE APPLICATION DEVELOPMENT Mobile phones are not just phones anymore with only voice and SMS functionalities The continuing spread of mobile technology will have a dramatic impact on the lives of individuals and institutions Convergence of internet and telecommunication technologies is increasing rapidly However in the progress of mobile application development due to complex structure of mobile ecosystem there is a fragmentation in terms of different mobile Operating Systems Screen Resolutions Device Models and Capabilities and User Experience Fragmentation is the word that defines the biggest barrier Fragmentation increases the cost and the time to develop mobile applications Figure 2 3 shows the fragmentation cost of applicati
15. ation name the address will be captured automatically as the GPS is ON and you can write a short note to describe the place Click on the camera button to capture an image of the place and save it The place details will be saved onto the database see Figure 5 5 If you change your mind and need to move to a different location or you are not interested in the current location you can simply press Cancel and the Record tab closes and you will be brought back to the Trip View Once the Save button is clicked user will be taken to the Trip view Here is the list of places that have been visited Each record of the place is shown with the place name brief description and the date and time of the place recorded This is also placed in the order of the places visited to give you an idea of the route taken see Figure 5 6 SY g3S Ea 6 22 CREATE san diego to sfo yosemite vegas Figure 5 4 Step 2 on displaying the trips in list view ATaI O PY 3 3S ua 4 02 Trip Tracker AT amp T 7 OY a 3 Gz 7 00 Trip Tracker Trip Record home long way to school 2011 Apr 26 22 59 28 Address Capturing location gas station filling up my tank 2011 Apr 26 23 01 43 isc opt app 2011 Apr 27 09 48 16 Write Note juice it up asai blue berry 2011 Apr 27 10 54 11 Capture g Save kris room 2011 Apr 27 12 21 15 Cancel Figure 5 5 Step 3 on clicking Figure 5 6 Step 4 the the record tab loc
16. ations visited 24 29 To make it more interactive and fun select the Map tab you can see all the places recorded on the live map see Figure 5 7 The places are shown with the markers on them The Markers are connected with lines as route These lines are connected in the order of recording the places ATST 7 OY 32 3 5 27 Record the map tab On tapping the markers the place detail will be popped up with name of the place showing the brief description see Figure 5 8 If you wish to see the complete details click on the View Details button which brings you to another activity to display the name of the place address of the place full description and image corresponding to the place see Figure 5 9 There is also a choice to edit the details of the location To do so go to the Trip tab click on the place to be edited This opens up the new editing view where the place name and the description can be edited see Figure 5 10 26 AT amp T 2S g3S um 9 24 y O The library Working on my research My usual place to hangout and study I love it my 2nd home View Details Close window Figure 5 8 Step 6 on clicking a marker AT amp T O amp 3 3S uka 12 36 Trip Tracker Iam E The library AT amp T FO F mia Ea 4 03 Trip Tracker Place INN WOW pic me alli les M pa LP BEESEBEEr BARBA lt En Figure 5 9 Step 7 to view all Figure 5 10 Step
17. ew AT amp T O 3B 3S Ea 6 22 CREATE san diego to sfo yosemite vegas Figure 4 2 New trip creator MyTrip implements two listeners 1 setOnItemClickListener This listener is activated when the user clicks on any of the trip from the list and then calls the method onItemClick This method redirects to intent to call the Tab class showing the details of that trip 2 setOnClickListener This listener is activated when the user clicks on the New Trip It opens up an alert box to create a new trip This also opens a new entry for the new trip in the database using the method addTripName There are also two default methods that are always implemented getDataList and showDataList getDataList retrieves already existing trips and calls the showDataList to display it during the launch of the Activity getDataList also manages a Cursor to handle the records of the stored database If the user clicks on the New Trip button the application calls the Tab Activity showing three tabs Trip Logger Map and Recorder These three tabs define each trip 17 4 2 1 Trip Logger Trip Logger is the host tab and is displayed as the default tab which gets loaded once the New Trip button is pressed This is used to list all the locations visited in the trip Each location displays the location name a brief description and date This tab also offers the opportunity to edit the location parameters such as location name a
18. getting started and installation of the application on their mobile devices 5 2 SETTING UP THE DEVELOPMENT ENVIRONMENT A typical developer needs to set up an environment for android development The installation steps given below assume that the developer is aware of setting up the development environment for the android development which is given in android developer site This application can be developed on any platform which runs Java android The installation steps for the development e Install Java JDK and JRE e Install Eclipse IDE Install Android SDK e Install ADT plug in in Eclipse for Android Development Once the setup of the machine is done the next step is to download the source code and make changes on to it e Copy the zip files of the source code to your machine e Unzip the file to your workspace e Import the project into the Eclipse 5 3 INSTALLING APPLICATION ON DEVICE The first step is to get the apk files from the Unknown Source or the other way is to download from the Android Market Installation from Android Market is direct and simple If it has to be downloaded from other source except Android Market then the phone settings should be changed Figure 5 1 shows the installation from unknown source 22 AG Me 2 28 pm nown sources Y tal Y tall of non Market move installed applications A Development A ns for application nen Figure 5 1 Installation from unknown source For the
19. ilizing Location and Maps pose a huge design consideration for this application since it uses high GPS activity and more power consumption 3 4 4 Image Capture Multimedia is another feature of this application This integration provides a higher end GUI application to the users The mobile device camera is utilized to capture pictures and tag them to the location points To access the device camera permission had to be set in the Android Manifest file by including the lt uses permission gt as CAMERA and lt uses features gt manifest element to declare the camera features used by the application The Camera class is used to set image capture settings start stop preview and snap pictures This class manages the actual camera hardware and is the client for the Camera service Camera class is not thread safe and is meant for use from only one event Thus this class s methods could not be called from multiple threads at once MediaStore 15 is the class which contains the meta data for all available media on both internal and external storage devices ACTION_IMAGE_CAPTURE 15 is the standard intent which is used by the camera application to capture an image and return it The EXTRA_OUTPUT 15 parameter is set to store the images captured in the gallery and name them with the place name previously named by the user The Application stores the images in the SD card of the device and can also be viewed in the Image Gallery of the phone 14
20. iques that have long been refined for creating successful desktop computing environments do not translate well to the mobile environment The focus of our proposal is on developing the next generation of mobile computing applications which will incorporate a near constant internet connection novel interactions e g multi touch sensors and machine learning e g activity inference to provide rich interactive experiences 2 Global Positioning System popular and commonly known as GPS is a kind of space based navigation technology providing us with the exact location and time details no matter where we are It s not affected by bad weather or any other obstruction in the navigation process The technology was brought into the practice at the first time back in 1973 by U S Defense Department From the testing experience the technology showed it s much superior and advanced and it has superseded all the earlier versions of navigation systems With the rapid development of navigation technology GPS is widely used in many fields such as army banking and surveillance science technology commerce geology telecommunication and etc 3 In theory the GPS technology works in this model A GPS Data Logger that tracks the exact location of a vehicle or a device and then the tracking information would be acquired through the connection of the GPS data Logger with a computer via local or global Internet 3 Thanks to the development
21. nManager to potentially rest for minTime milliseconds between location updates to conserve power e minDistance Location will only broadcast if the device moves by minDistance e Criteria contain parameters for location manager to choose provider and parameters to compute the location e Intent intent to be sent for each location update After registering the current location the latitude and longitude is used to obtain the location address using reverse geocoding 7 technique This is possible on extending the Geocoder class and implementing the method getFromLocation 17 The latitude and longitude are passed as parameters to this method to obtain a partial address of the location The camera capture feature of this activity works by extending the MediaStore 15 class This class implements intent called ACTION_IMAGE_CAPTURE 15 which is sent to the camera application to capture an image and return it This intent opens up the camera preview The preview has features to capture image and once the desired image is captured it is stored in external storage space in the JPEG format The URI of that image is then inserted into the database After obtaining the location name location description image and the geo points of the location they are updated to the database as a new record 21 CHAPTER 5 USER S MANUAL 5 1 OVERVIEW This chapter educates the users and developers of the application by providing information on
22. nd location description once clicked on the location listed in the Trip Logger Figure 4 3 shows the trip logger view ATST 7 OY 3B 3 um 7 00 Record long way to school 2011 Apr 26 22 59 28 gas station filling up my tank 2011 Apr 26 23 01 43 isc optapp 2011 Apr 27 09 48 16 juice itup asai blue berry 2011 Apr 27 10 54 11 kris room 2011 Apr 27 12 21 15 Figure 4 3 Trip logger tab A unique identifier ID is assigned to each trip When a new trip is selected an ID assigned to the trip is passed on to the Tab Activity and this ID holds active throughout the active state of the trip The methods getDataList and showDataList are used to retrieve the places and place info from the database storage and display it in the list view 4 2 2 Map View Map View is opened through the click of another Tab Map View uses the location services supported by the device through the classes in android location package 14 The Maps package com google android maps MapView 14 a subclass of ViewGroup is used to 18 display a map with data obtained from the Google Maps service Figure 4 4 shows the map view AT amp T 7 OY 323 5 27 Record To use the Google maps data Maps service had to be registered and MDS fingerprint of the certificate which is required to sign the application had to be provided to obtain a Maps API key This key had to be inserted in the xml file of the Map View for the value
23. ne 26 Step 7 to view all the detalla Ga GN aa naa a a GA a ga Gada baa agan aa 26 Figure 5 10 Step 8 to edit the details of the location ooooonnccnoncnoccnononononcnonnnanncona cono nccononannos 26 CON DAR WN e e e e e e a S ON MN FWY FS GPS NLP LBS GIS OHA VM SDK GNU API USB URL UI API GUI SD URI JPEG 1X LIST OF ABBREVIATIONS Global Positioning System Network Location Provider Location based services Geographical Information System Open Handset Alliance Virtual Machine Software Development Kit GNU s Not Unix Application Programming Interface Universal Serial Bus Uniform Resource Locator User Interface Application Programming Interface Graphical User Interface Secure Digital Uniform Resource Identifier Joint Photographic Experts Group ACKNOWLEDGEMENTS This research project would not have been possible without the support of many people I wish to express my gratitude to my adviser Prof Dr Joseph Lewis who offered me invaluable assistance guidance and support My deepest gratitude to Prof Dr Kris Stewart and Prof Dr Caroline A Macera without whose support and assistance this study would not have been successful Thanks to my parents for their moral support Special thanks to my friend Neha Karnam for providing invaluable assistance and advice CHAPTER 1 INTRODUCTION With changing times the mobile technology has changed a lot and in the last few years we have seen
24. oeenoaneean anae anaeane 6 3 DESIGN SPECIFICATION spin dad 8 De OV A es ac tes alk a et i nes Marta one del ado ata Pes me erat ae 8 3 2 Android Platform asas ss sae sage ii ee eee 8 3 3 COMPONENISOVETVIEW a O BA 9 3 4 High Level Components td cs 9 SAT OVEIVICW A Ta eaters 10 E A WET AC Brescia ioe Mastic cide cat a Ba AB GG A ak a A As naga a aa ai 10 3 4 3 Location and MapPS unid errata Gaga ah paia ak ei ae araga ani 12 SAA mas e Capture tn aaa o 13 Soy AD ALAS UAC sconces a a E E ga Aa A a ane a bas a ga a a aan 14 A gt MODULE Side 15 A l VV CTA e k 15 4 2 Implementation Details 2202 siccssusiedevascsaataseasaasedanscats oucoadevansdacdecuaennts dasoganssuseaass 16 4 amp 2 Wp Lor rra io jee aa a aa a eaten ak 17 42 DEAT VAG dl eds 17 ADO RECOVER aa cis EA a a aa Ta Ga Leds AA A ae Ta OIE 19 5 USERS MAN UA a AN Ka 21 A cated acdsee catisten seh pall eee ee Renate a adage eta ad ag a ga aan 21 5 2 Setting Up the Development FEnvironment 0o0e00ee0enoe oe aneesan anana nee 21 5 3 Installing Application on Device ooooocononocinonccononanononacononanononaconononoonncnnonancnones 21 5 4 Using the Application on Device aiii 22 Dee Creatine A REE 22 6 DISCUSSION ici 27 6 1 Future EOS e IE 271 0 2 CONE NS 27 BIBLIOGRAPHY A A A A a O Ta aan 29 Figure 2 1 Figure 2 2 Figure 2 3 Figure 3 1 Figure 3 2 Figure 3 3 Figure 4 1 Figure 4 2 Figure 4 3 Figure 4 4 Figure 4 5 Figure 5 1
25. of android apiKey to enable the Google maps To use the Maps external library lt uses library gt element in the Android Manifest file is defined to com google android maps This thus enables the build tools to link the application against the Maps external library This is to also ensure that the Android system checks the required library is available to install the application on the device To use the Maps in the application another step is required MapActivity class had to be extended and a layout had to be created that included a MapView element MapActivity is a special sub class of Activity which has important map capabilities Map View properties are set To enable zoom controls in the map setBuiltinZoomControls is set to true getZoom and initial Zoom max Zoom MapView class provides a wrapper around the Google Maps API to manipulate the Google Maps data through class methods 19 To create map markers and lay overs ItemizedOverlay class had to be implemented All the locations that need to be tagged are added to OverlayItem ArrayList The populate method is called each time a new OverlayItem is added to the list which reads each of the objects in the list and prepare them to be drawn To handle the touch events onTap method is called This method obtains the latitude and longitude of the point This method uses the member android content Context to create a new AlertDialog Builder and uses the tapped Overlayltem s
26. of GPS technology the most advanced navigation technology real time GPS service becomes true It s been fast and wildly adopted in many fields and is becoming to play a crucial role in our modern life especially in security and safety field 3 2 2 RESEARCH AND STUDY Over the past year Google s Android and Apple s iOS have been strong competitors in the Mobile app market According to comScore iOS mobile devices captured 25 of the market in February 2011 That s up only slightly from November 2010 despite the introduction of the iPhone on Verizon s network On the other hand iOS biggest competitor in the eyes of many Google s Android has grown 7 since November 2010 and now commands 33 of the smart phone subscriber market in the United States 4 Figure 2 1 shows the total U S smartphone subscribers 5 Top Smartphone Platforms 3 Month Avg Ending Feb 2011 vs 3 Month Avg Ending Nov 2010 Total U S Smartphone Subscribers Ages 13 Source comScore MobiLens Share of Smartphone Subscribers Point Change Total Smartphone Subscribers Total Smartphone Subscribers 100 0 100 0 N Figure 2 1 Top smartphone platforms Source comScore Inc comScore Reports February 2011 U S Mobile Subscriber Market Share 2011 http www comscore com Press_Events Press_Releases 2011 4 comScore_Reports_February_2011_U S _Mobile_Subscriber_ Market_Share accessed Apr 2011 5 By providing an open development pla
27. ol which is required to browse the table contents run SQL commands and perform other SQL functions Executing an SQL query returns a Cursor which stores the result set pointing to all the rows found by the query In this application relational database is used to create two tables for storing trip names trip details location name location description image URI and geo points of the location 15 CHAPTER 4 MODULES 4 1 OVERVIEW The Android application Trip Tracker is developed using many user defined Activities which are based on many user defined java classes Figure 4 1 illustrates the control flow among the classes and will be explained in detail further down MyTrip MyTripDatabase MylItemizedOverlay MapltemizedOverlayLines TripList TripView Figure 4 1 Displaying the workflow diagram with all the class files These class files form the backbone of the entire application Each class file has a specific purpose in creating calling the Activities of the application 16 4 2 IMPLEMENTATION DETAILS There are seven Activities which are a part of the lifecycle of this application MyTrip Tab Map Trip TripView Record and ViewImage MyTrip is the initial Activity which gets loaded when the application starts This is designed to display all the trips the user has been to using a ListView Layout and also providing an option to create a new trip Figure 4 2 shows the new trip creator vi
28. on development 9 Fragmentation Cost of application development Figure 2 3 Fragmentation cost of application development Adapted from source Source Israfil Coskun and Osman Celik Challenges of Mobile Application Development 2010 http developer smartface biz challeng es of mobile application developement n74 html accessed Dec 2010 Different device models support different functionalities such as touch screen gravity censors camera flash etc Hardware performances also vary between devices In addition to that some applications need to support external device functionalities 9 Screen resolution is crucially important in application development Ongoing trend is to have bigger screen resolutions for expanded multimedia support data presentation and browsing However device manufacturers tend to support multi range of resolutions to address the needs of different user segments 9 User experience which is simply the way the users behave while using the keyboard screen entry exit functions number of clicks etc is different across device models Usage scenarios and actions are different between device models and these differences should be realized and taken into consideration in order to deploy successful mobile applications 9 CHAPTER 3 DESIGN SPECIFICATION 3 1 OVERVIEW Trip Tracker is an application built using Android framework for mobile platform The application is used to create and maintain
29. pplication for travelers to obtain the geo location and tag it with multimedia features This application allows users to create store and view their trips trip related information and all the memories that bring with it Trip Tracker combines places visited notes taken and the images captured and display all this information on a map at the exact location where it all took place This application is developed to provide the users a rich user experience by having all the information in one place easy to access and interactive With the help of Google Maps each trip can be drawn out on the map with all the locations visited and the route taken The user will also be able to view the description the location address and the image captured if any Trip Tracker developed in Android provides extensive flexibility supports many features and can be among the best travel friendly app vi TABLE OF CONTENTS PAGE ABSTRACT th ened aa Sa TEN NA nie aa a pa Na pa sa a a agra nan v EIST OF FIGURES rises stecatngasavy sic wre aa e e del Vili LIST OF ABBREVIATIONS 54456555456865 143559 a aa ah ga Sa na eea Wa GE aaa Ga a E GG ah eects a id ix ACKNOWLEDGEMENTS sae en Sa an ta Ad pv eos aoe ae Be K CHAPTER CA teers cen aan dca Gad ka aaa a aa Ta aa ea ah aa pana nah 1 2 AGT RRA TURE ori 3 2 1 Mobile Platfornis ssssssssna sica nde a ads 3 2 2 Research and SUNY aa E 4 2 3 Challenges in Mobile Application Development es 0ee0ee
30. roid device to provide a rich user experience to the travelers enabling them to store all the locations visited along with the beautiful memories associated with them This application is very simple to use and is helpful to record multiple trips displaying their routes and other details Trip Tracker has been tested on Motorola Bravo and Motorola Flip Out having Android 2 2 28 1 2 3 4 5 6 7 8 9 10 11 12 29 BIBLIOGRAPHY Francisca Kellett The Best Travel Apps 2011 http www telegraph co uk travel travelaccessories 8330846 The best travel apps html accessed Mar 2011 Google EMEA s AndroidEDU Programme Sample Proposals 2011 https sites google com site androideduemea sample proposals Context Aware accessed Jan 2011 Lion GPS Secure Your Life 2011 http www myoversea com gps secure your life accessed Apr 2011 Patricio Robles Android versus iOS The Cold Hard Truth 2011 http econsultancy com us blog 7374 android versus ios the cold hard truth accessed Apr 2011 comScore Inc comScore Reports February 2011 U S Mobile Subscriber Market Share 2011 http www comscore com Press_Events Press_Releases 2011 4 comScore_Reports_ February_2011_U S _Mobile_Subscriber_Market_Share accessed Apr 2011 AdMob Google Inc AdMob Mobile Metrics 2010 http metrics admob com handset share or mobile app accessed Aug 2010 Sandeep Kumar Mohammed Abdul Q
31. te between the activities to send receive data using the method getIntent method All the activities and intents are specified in the AndroidManifest xml file 12 This is a must needed file for every application and is present in the root directory This file presents essential information of the application to the Android system the information which the system must have before it runs the application code It describes the components of the application the classes that implement the components and other related information This lets the Android system know what the components are and under what circumstances they can be launched 3 4 2 User Interface The User Interface is build using Views and ViewGroup objects Android UI is responsible for the Layout manager and the widget organizer View objects are the basic 11 units of user interface expression on the Android platform The View class serves as the base for subclasses called widgets which offer fully implemented User Interface UI objects like text fields and buttons The ViewGroup class serves as the base for subclasses called layouts which offer different kinds of layout architecture like linear tabular and relative A View object is a data structure whose properties store the layout parameters and content for a specific rectangular area of the screen A View object handles its own measurement layout drawing focus change scrolling and key gesture interactions for the
32. tform Android offers developers the ability to build extremely rich and innovative applications Developers are free to take advantage of the device hardware access location information run background services set alarms add notifications to the status bar and much much more Figure 2 2 iOS versus Android 6 iOS and Android show higher usage than share of handsets sold primarily due to strong app usage Handset Market Share vs Market Share Mobile Web and App Usage Worldwide 50 45 40 40 35 30 26 25 19 20 15 10 10 6 We 5 5 2 0 mis Symbian Apple Microsoft Android Other m Handset Share W Mobile Web App Gartner Q1 2010 Market Share AdMob Operating System Share May 2010 Figure 2 2 IOS versus Android Source AdMob Google Inc AdMob Mobile Metrics 2010 http metrics admob com handset share or mobile app accessed Aug 2010 Location based services LBS 7 are one of the most popular services based on a different navigation technologies provided by the mobile communication network Location based applications gained a lot of momentum in 2010 nearly tripling the number of users from 2009 from 12 3 million in 2009 to 33 2 million in 2010 This growth is expected to continue with the prediction that mobile location based ad spending will increase from 42 8 million in 2010 to 1 8 billion by 2015 8 LBS receives the location coordinates from the ground based mobile st
33. the travels and adventures with a lot more information about them Trip Tracker combines photos and notes of the travelers and display all this information on a map at the exact location where it all took place This research is oriented in creating a travel logger integrated with GPS to track places to store the route along with capturing images using the build in cameras in the mobile devices This application is developed with intensive research on Location based services and Map Overlays to provide the users to create a personalized travel journal and tag photos and other information to the places visited CHAPTER 2 LITERATURE 2 1 MOBILE PLATFORM The mobile phone is one of the quickest to be adopted technologies in human history As smart phones drop in price we will see a rapid shifting how mobile phones are perceived from simple communication devices to general purpose mobile computers The Apple iPhone and Google Android have already begun to popularize this paradigm shift Soon even low end phones will be deployed with fast processors long battery life and rich sensing capabilities such as GPS accelerometer infrared light etc And unlike their desktop counterparts mobile phones have the unique property of always being on hand a near constant companion of their users In this way the mobile phone will become a sort of digital extension of the user sensing context as the user moves about the world However tools and techn
34. tion address picture captured and the description written by the traveller The detailed process will be explained in the later chapters 3 4 HIGH LEVEL COMPONENTS High level components are the very essential in any project to get a clear understanding of the purpose and the various high level modules involved The design of high level components form the backbone of the project upon which the detail components 10 stem out This section illustrates the high level components of this application explaining the design and the importance of each component 3 4 1 Overview An Activity is a single focused task that the user can do at any given point in time All the activities interact with the user The activities are responsible for creating the User Interface with setContentView View method They play a vital role in application s overall lifecycle Each activity is managed in an activity stack When a new activity is created it is placed on top of the current activity and becomes the running activity The previous activities are resumed after the current activity finishes its execution Figure 3 2 shows the application s high level overview design Activity User Interface Locations and Maps Image Capture Data Storage Figure 3 2 Application s high level overview design Intents are used to send asynchronous messages between the activities in the application Objects of type android content Intent communica
35. title and snippet for the dialog s title and message text So this application opens an alert box for the corresponding location name showing brief description of the place place name and place description On clicking on the Alertbox to show more details it leads to a different Activity called TripView displaying the complete information of the place Image captured at the location complete description location address and the location name 4 2 3 Recorder Recorder is another important tab for the creating the trip The trip starts from the recorder Upon selecting the Recorder tab it loads into a new Activity called the Record Figure 4 5 shows the recorder view ATaI POY 3 3S ad 4 02 Capturing location ahs en Figure 4 5 Recorder tab 20 This activity concentrates on recording the location name location details photo and geopoints of the trip location To capture the geopoint of the current location LocationListener 17 interface is implemented This interface uses the onLocationChanged 17 method which gets the Latitude and Longitude of the current location Another method requestLocationUpdates 17 registers the current activity to be notified periodically based upon the specific conditions which are specified as the four parameters of this method e minTime minimum time interval for notifications i e the frequency of notification or new locations can be controlled thus allowing the Locatio
36. trip journals with all the places visited with a short description and or an image captured 3 2 ANDROID PLATFORM Android is an open source operating system for mobile devices Android was initially developed by Android Inc and sold to Google in 2005 10 On November 2007 the Open Handset Alliance OHA was announced amongst a consortium of several top companies 10 The goal was to develop an open mobile platform every developer to contribute towards improving the performance and features of the product Android is built on top of Linux kernel and GNU software Software stack of the Android runs Java applications using Java core libraries Each instance of Java application runs on its own Virtual Machine VM called Dalvik 11 Well as for Dalvik VM it has its own Java Byte code and is designed to be to be optimal on memory and processor usage The VM executes Dalvik Executables with dex extension Among the various tools built in the Android dx tool is used to generate the executable that converts the Java classes into dex format 11 Android relies on the Linux kernel to perform system level functions such as memory management and threading amp even the more dependent on it for hardware interactions and power management Developers can build applications using the software development kit SDK developed by Google It consists of Application Programming Interface API used to develop robust Java applications 10 These AP

Download Pdf Manuals

image

Related Search

Related Contents

Télécharger - Eurodifroid  Green Power  Act of War - Direct Action    AVR 142 - Harman Kardon  Panasonic H665 Microwave Oven User Manual  商品保証について  2015年8月15日号(PDF・2577KB)  Soundmodul USM-RC - BEIER  Get User Manual  

Copyright © All rights reserved.
Failed to retrieve file