Route Tracking. Project Proposal

Size: px
Start display at page:

Download "Route Tracking. Project Proposal"

Transcription

1 Route Tracking Project Proposal Abstract Take the lead from similar GPS tracking mobile applications and provide a more detailed record of a typical activity route, whilst incorporating elevation changes into exercise calculations. The app features a limited user interface that provides detailed information about a user s Trek. This task incorporates the GPS sensor in coordination with the Google Maps API to visualize a traversed route. Index Terms Component, API, GPS, Interface, ViewGroup I. INTRODUCTION A. Aim In this paper a proposal is introduced to develop a Route tracking Location based service targeted towards a cyberphysical system. The service will run on an android-based phone as an app. The time-driven app will periodically record the location of the Android User through sensors in the phone as he/she completes a track. This data is then processed to give a variety of information showing the runner s progress over time including: timing, pacing, average speed as well as calories burnt. Furthermore, the data can be processed to create route visualization over a map. B. Motivation While there are several apps that perform similar actions i.e. Nike+, they only take in to account the two dimensional positioning of the user: latitude and longitude. The proposed app has the potential to become more accurate as it takes a third dimension of the user into account, the elevation. The proposed app will be targeted towards a whole range of customers. From Hikers to marathon runners, dog sled teams, skiers & outdoor enthusiasts. II. BACKGROUND The proposed app should be all inclusive in a typical android- OS system. As such, in terms of hardware, the entire system can be executed just in a single suitable cell phone with no additional accessories. The phones available for this project are the Nexus_S and the Galaxy SIII, both of which fulfill the requirements discussed in the subsections below. A. Important Hardware Requirements GPS Sensor: This is the main sensor with which the app will record the location of the user (latitude, longitude, elevation). Responsive input terminal: Required to enter information about the user, and set parameters for the app. Achieved through touchscreen interface of the screen. Graphic Output Interface: Interface through which user can track his/her progress as well as viewing map visualization. B. Important Software Requirements Android-OS: Cell phone has to run the latest Android OS which are compatible with the below APIs and programs. Android API: Contains classes & methods to interact with the Android OS The android s application framework is vast with a whole host of reusable components. In this proposal we only present two components. Further research and work in to the project may reveal more components that might be utilized. Google Maps API: Contains classes & methods to interact with Google maps, which will be used in map visualization. C. User Interface A major concern with the development of a mobile app, is the layout of the user interface. The Android uses an architecture of Views grouped into ViewGroups, that the user can call by touching the screen. Upon launching our app, a ViewGroup MenuScreen will load displaying the options 'Past Maps, Create Map, Settings'. Each of these options represents a View that is owned by the Viewgroup MenuScreen. From the View PastMaps, the user will be able to access altitude representations of their routes, and access GoogleMaps with their route laid over the map. This view will also hold information about calories burned on previous routes, and a graphical comparison of the stored routes. The CreateMap View will allow the user to press a button and begin tracking a route. This will trigger the GPS to start logging information. After pressing the begin button, A stop button will appear that user may press to stop the route. The last View titled Settings will be used to change various settings of the app. We will include different units to choose from (SI vs. US), and the user will be able to input personal information to help calculate calories burned more accurately. D. Sensors The main sensor used by our app is the GPS. Our main concern in using the GPS is the accuracy of the data, and how the usage of the GPS will drain the battery. We have found that cell towers may provide more accurate information more quickly, but have opted not to use tower tracking initially to

2 simplify our design. As the semester progresses and if time allows, we may include tower tracking. We can control the power usage of the GPS by limiting how often the GPS returns data. We can set this with a time limit & also a minimum distance traveled. This variable will also be changeable by the user dependent upon the pace of the user s activity. We will have to fine tune this variable as the app becomes usable, and we can see how it affects the quality of the maps produced. E. Google Maps APIs The key functionality of the application will be driven by the use of several Android and Google API s. Specifically, initial investigation has highlighted the Android Location API, Google Maps Android API, and the Google Maps Elevation API as probable components in our application. Google s MapView() library for Android devices provides developers the main UI functionality of Google Maps such as map control and rendering, but also allows a number of Overlay types to be drawn on top of the map. The drawing of Overlays is an integral part of the application, as it allows for the visualization of activity routes, both present and past. Whether obtaining the device location through the Android Location API or Google Maps API, the application will store an array of latitude and coordinates for use later on. In order to get the elevation of a given point, the Google Maps Elevation API will be used. Using the Elevation API, coordinate pairs of latitude and longitude are provided to the API, and the Google Maps elevation for that point is returned. Once elevation data is collected, an overlay of the route will be drawn on top of a Google Maps, with variation in route color based on elevation changes. III. PROPOSAL CHALLENGES Of the challenges expected, the most outstanding obstacle is having no previous experience with Android application, Java, or XML development. There is a relatively short time frame in which our group must transition from learning about the basic Android architecture to actually implementing a program to obtain the desired functionality. Additionally, satellite communication will pose several issues in itself, from signal strength to power management. Perhaps the most significant concern here is satellite-to-phone accuracy: without reliable accuracy, the purpose and improvements our application is intended to provide will be greatly undermined. V. TRACKTREK OVERVIEW Launch App Choose settings Start Route Log GPS coordinates and elevation at controllable time intervals End Route Save information to Routes activity Select route from list in Routes activity Upon selecting the route, select from the following options: Google map visualization Elevation visualization Calories spent VI. HIGH LEVEL SYSTEM DESIGN A. Launch App Upon launching the app, the user is presented with four options in the MenuScreen activity depicted in Figure 1. The options include: Start Route Start GPS tracking Previous Routes GPS coordinates of routes Settings User preferences Map Temporary demonstration of Google Maps. Future application of Google Maps will be elsewhere. IV. PROPOSAL GOALS Despite the challenges we will encounter, we are confident that completing this project will accomplish several goals. Upon successful completion of the project, our group will have a solid fundamental understanding of Android application development. This will include experience in Java programming and XML design, both of which are skill sets that have an extremely broad array of applications outside of mobile application development. Altogether, a key take-away from this project is practice in creating a simple user experience for a complex task.

3 Figure 1 MenuScreen Activity Layout Each of these selections starts a new activity with different functions. Upon launching the app, It will recall the settings that have been previously determined during other uses of the application that have been set in the Settings activity. If TrackTrek has been paused to use the phone for other purposes, it will also continue running the GPS in the background. Upon launching, the Start Route button may also display End Route, depending upon the current status of the GPS upon launch. The app will not default to the MenuScreen, but will open where the user last left the application. B. Choose Settings The user will be able to define different parameters to change the outcome of the route tracking. These settings will be determined under the Settings activity using the spinner devices created by the Android developers. Spinners act as a dropdown list of strings, which displays the choice made by the user. These choices are stored into a global parameter defined by the programmer stored in a list of preferences called SharedPreferences. SharedPreferences is called to save the choices, and once again to use the choice across all activities within the application. Saving choices is called by the program using Android derived functions such as onselected(), and recalled in the settings menu by using onresume(). Figure 2 Settings Activity Layout The user will first be able to choose if they would like to see mile or kilometer values for distance traveled. These choices are shown in the spinner device described earlier. This will directly affect which unit is used when displaying a distance on the map and on the elevation depiction. The graphical layout of this parameter is demonstrated in Figure 2. Another preference will be the sampling rate of the GPS. This will determine how often the GPS records latitude/longitude information based on a time factor and a distance. This parameter may greatly increase the batteries performance for long routes, and will allow increased accuracy for those seeking greater performance. Sampling rate will be directly related to exactness of calories burned, as well as the graphical representations of the route. This parameter has not been implemented in this demonstration and will be added at a later date. C. Start Route Once the user is ready to start his run, he selects the Start Route option. From the settings (covered in the next subsection) the app will start logging in the User s Latitude/Longitude co-ordinates and elevation at fixed time intervals. D. Log GPS Coordinates & Elevation 1) GPS Coordinates

4 Our Android-powered devices (S3 & Nexus S) can receive location updates through two underlying technologies, using the internal GPS sensor or cell network localization. These technologies are all contained in a whole host of high-level abstract methods to find a cell phones position. This level of abstraction allows the same piece of code to typically work for any android phone which contains a GPS sensor. As such our code works just as on well on the Galaxy S3 or the Nexus S without requiring any modification of code. For our application purposes we a high degree of accuracy is required. Generally a location provider with greater accuracy (GPS) requires a longer fix time than one with lower accuracy (network-based). We want to record the location data as quickly as possible and update it as more accurate data becomes available. To do so we use both GPS and network providers. We receive location updates from multiple location providers that may have different timestamps and varying levels of accuracy. Logic is incorporated to disambiguate the location providers and discard updates that are stale and less accurate. The typical flow of procedures for obtaining the user location: 1. User starts the run. 2. App starts listening for updates from desired location providers. 3. Maintain a "current best estimate" of location by filtering out new, but less accurate fixes. 4. Stop listening for location updates. This flow is demonstrated in the figure below. Figure 3 - A timeline representing the window in which the application listens for location updates. At the moment we have been able to get accurate Latitude/Longitude values. The next step is to save a log of those values, which can then be used as the basis for computations and analysis by the other components of our application. Furthermore since our application will need to continuously receive and process location updates, a more efficient use of resources can be utilized if we implement the logic as a background service, so the user can multitask on the phone. Another we factor we have considered is power consumption. Long windows of listening for location fixes can consume a lot of battery power, but short periods might not allow for sufficient accuracy. So we will have to carry out field tests to find out the best compromise. When the user is done with his/her run, location updates are terminated to reduce unnecessary consumption of power and network bandwidth. Reverse-geocoding is the process of translating latitude longitude coordinates to a human-readable address [ ng.html]. We have implemented this logic in our code to be used as a reference in future field tests. 2) Elevation On Android powered devices there are three different methods of acquiring the elevation at a location: 1. Altitude raw data straight from GPS Sensor: In addition to Latitude & Longitude the GPS sensor can also acquire elevation. However sources[ indicate that these readings are unreliable and inaccurate. 2. Utilizing Web Service, which can return an elevation reading: From the Latitude & Longitude coordinates acquired by the GPS, a Web Service can take those values and return an elevation reading. USGS Elevation Query Web Service or Google Maps are examples. 3. Using the Barometer sensor: Commercially Air pressure readings have been used to more accurately calculate the relative altitude. Out of all three methods, this one seems to be the most accurate (according to research). However only the Galaxy S3 has a barometer sensor, the Nexus S do not have one. For our application purposes, we are not interested in the absolute altitude above sea level per se. Rather we are interested in the changes of elevation the user will go through as he/she goes on his/her run. As such the first two methods could be feasible. Further field tests are required to test this hypothesis. E. End Route Ending the route turns off the GPS and elevation tracking, and stores the information under the routes section. This action will eventually prompt the user asking if they want to view the Google map visualization, the elevation map, or the calorie counter. F. Select Route from List in Routes Activity The Routes activity will show a dynamic list of the routes tracked by the application. This list will grow by +1 every instance the End Route function is called. These routes will be given a file name chosen by the user upon completion of the route, or until we enable this feature a generic name such as Route1, Route2, etc. The routes will be listed in a date created order listing the most recent route at the top of the list. The

5 routes activity will also implement a means of deleting the information if desired. This approach may cause some confusion at first when the user terminates the GPS by selecting End Route. They may expect something to immediately happen upon pressing End Route, but will find that no immediate action happens. To go around this shortcoming, we may be able to open the Routes screen upon pressing the End Route button and select the first route for the user; so that they are immediately prompted with what information they want to view. G. Google Maps Visualization As discussed in the above sections, once the user has completed an activity, the application stops logging positioning data and then stores the waypoints of the recently completed route into the Previous Routes memory area. Based off the methods we intend to apply in order to obtain elevation data, this information will likely be stored into an array in ordered pairs of latitude and longitude. In fact, within the Google Maps library, a predefined class labeled GeoPoint exists which stores a pair of latitude and longitude coordinates as integer numbers of micro degrees. In order for the user to review their route later on, we must incorporate the Google Maps API. In order to do this with an Android device, we first import the Google Maps external library, which contains the key class MapView. This was done within our AndroidManifext.xml file. MapView is a subclass of the Android class ViewGroup. Basically, MapView provides a container for the Google Maps API, allowing the user the manipulate map data and control the view. The map displayed is constructed with data from the Google Maps Service, but now the map can be controlled with keypresses, touch gestures, and other common user interface elements. A key feature of the MapView class that we wish to utilize is the ability to draw Overlay types over the generated map that respond to user inputs. Specifically, we are interested in the ItemizedOverlay class (extension from the class com.google.android.maps.overlay) within the Google Maps library. This base class consists of a list of OverlayItems, which in the case of route drawing, controls the orientation, span bounds, and marker/waypiont creation along a route. An additional extension of the Overlay class is the RouteSegmentOverlay, which will be explored and ideally utilized as we move forward with our application development. Although not yet implemented, our next steps will involve using both of these classes, along with the GeoPoint class, to plot out a user s activity route. At the time of our midterm presentation, our application has the ability to obtain latitude/longitude coordinates via a GPS sensor or Location Services, as outlined in the above sections. Concerning map visualization, we are able to center a map over a pair of latitude and longitude coordinates input by a user. Figure 4: Screenshot of Google Maps Implementation Outside of location services, the key Google Map classes that allow this are MapView, MapActivity, MapController, and GeoPoint. A necessary step to realize this was the generation of a Google Maps API Key (which is unique to each machine used during an app s development stage). This is required to identify one s application, as Google limits the number of times an individual/app accesses their satellite and server data. In order to get a map centered on the location of the device, Location Services must be implemented. Now that the Google Map classes allow control and viewing of a map, interfaces such as LocationListener and LocationManager prompt the device to detect changes in GPS status and receive location updates. Upon further testing, the final components used to achieve our desired functionality will be described in greater detail at a later date. H. Elevation Visualization This option will make a timeline visualization of the elevation information using the sampling rate chosen by the user in the settings menu. The visual will resemble a line graph, and will be shown in Miles/KM versus time. I. Calories Spent VII. MIDTERM PROGRAMMING CHALLENGES The biggest challenge our group has faced is the breadth of concepts & syntax required to understand the Android SDK environment. While there are a lot of resources available for support & learning, (being a worldwide multibillion dollar industry tends to create that) we have found the android platform has a broad learning curve.

6 One of the primary challenges our whole group faced was the lack of experience in developing an android application. Eclipse is a great development tool, but even that was not enough to bridge the gap in understanding of xml and javascript. Fortunately, Google provides excellent resources to help one get up to speed. However, all of us struggled at first to understand how each component is related to or required by another component to create the over all application function. Miscellaneous errors with the Java compiler and syntax errors were eventually solved, but we have encountered nearly exactly what we expected in our initial proposal challenges section. VIII. MIDTERM GOALS With reference to our project RoadMap, we feel that we accomplished what we set out to do before our midterm presentation. Although we don t have a firm method to calculate calories burned yet, we made progress with the map visualizations, which was initially a later milestone. As mentioned throughout our high-level system design section, our next steps require storing the latitude/longitude pairs of a user s route, and then plotting them on a Google Map. Overall, our group is confident that we can achieve our original app functionality within the stipulated project timeline. Figure 5 Project roadmap

Contextual Android Education

Contextual Android Education Contextual Android Education James Reed David S. Janzen Abstract Advances in mobile phone hardware and development platforms have drastically increased the demand, interest, and potential of mobile applications.

More information

Internet of Things Sensors - Part 1 Location Services

Internet of Things Sensors - Part 1 Location Services Internet of Things Sensors - Part 1 Location Services Aveek Dutta Assistant Professor Department of Computer Engineering University at Albany SUNY e-mail: adutta@albany.edu http://www.albany.edu/faculty/adutta

More information

register/unregister for Intent to be activated if device is within a specific distance of of given lat/long

register/unregister for Intent to be activated if device is within a specific distance of of given lat/long stolen from: http://developer.android.com/guide/topics/sensors/index.html Locations and Maps Build using android.location package and google maps libraries Main component to talk to is LocationManager

More information

Android Programming Lecture 9: Two New Views 9/30/2011

Android Programming Lecture 9: Two New Views 9/30/2011 Android Programming Lecture 9: Two New Views 9/30/2011 ListView View Using ListViews is very much like using Spinners Build off an array of data Events on the list happen at a particular position ListView

More information

Stream Map USA Manual

Stream Map USA Manual 1. INTRODUCTION When Stream Map USA is launched, a map of North America opens showing your current location and a colored area highlighting the states covered. Stream Map USA Manual This manual is designed

More information

Fragments and the Maps API

Fragments and the Maps API Fragments and the Maps API Alexander Nelson October 6, 2017 University of Arkansas - Department of Computer Science and Computer Engineering Fragments Fragments Fragment A behavior or a portion of a user

More information

User Guide Android App. Get the most out of the MapItFast app on your Android device with this user guide.

User Guide Android App. Get the most out of the MapItFast app on your Android device with this user guide. User Guide Android App Get the most out of the MapItFast app on your Android device with this user guide. Last Updated: January 2017 Disclaimer The use of GPS devices, tablets and smartphones with MapItFast

More information

In this Class Mark shows you how to put applications into packages and how to run them through the command line.

In this Class Mark shows you how to put applications into packages and how to run them through the command line. Overview Unless you ve been sleeping for the last couple of years, you know that Mobile is H-O-T! And the most popular mobile platform in the world? That s Android. Do you have a great idea for an App

More information

CS371m - Mobile Computing. Maps

CS371m - Mobile Computing. Maps CS371m - Mobile Computing Maps Using Google Maps This lecture focuses on using Google Maps inside an Android app Alternatives Exist: Open Street Maps http://www.openstreetmap.org/ If you simply want to

More information

GPS/GIS Activities Summary

GPS/GIS Activities Summary GPS/GIS Activities Summary Group activities Outdoor activities Use of GPS receivers Use of computers Calculations Relevant to robotics Relevant to agriculture 1. Information technologies in agriculture

More information

Android Application Development

Android Application Development Android Application Development Course Code: AND-401 Version 7 (Nougat) 2016 Android ATC Published by: Android ATC Fourth Printing: December 2016. First Printing: October 2013. ISBN: 978-0-9900143-8-6

More information

Android Programming Lecture 2 9/7/2011

Android Programming Lecture 2 9/7/2011 Android Programming Lecture 2 9/7/2011 Creating a first app 1. Create a new Android project (a collection of source code and resources for the app) from the Eclipse file menu 2. Choose a project name (can

More information

USER GUIDE PowerMap CRM

USER GUIDE PowerMap CRM USER GUIDE PowerMap CRM 2013 2015 Contents Configuring PowerMap Setting up Entities for Geocoding Geocoding Existing Records Advanced Settings Bing Maps Credentials Initial Latitude Initial Longitude Initial

More information

Windows 7 Training for Developers

Windows 7 Training for Developers Windows 7 Training for Developers Course 50218-4 Days - Instructor-led, Hands-on Introduction This instructor-led course provides students with the knowledge and skills to develop real-world applications

More information

Business Intelligence and Reporting Tools

Business Intelligence and Reporting Tools Business Intelligence and Reporting Tools Release 1.0 Requirements Document Version 1.0 November 8, 2004 Contents Eclipse Business Intelligence and Reporting Tools Project Requirements...2 Project Overview...2

More information

application components

application components What you need to know for Lab 1 code to publish workflow application components activities An activity is an application component that provides a screen with which users can interact in order to do something,

More information

Loca%on Support in Android. COMP 355 (Muppala) Location Services and Maps 1

Loca%on Support in Android. COMP 355 (Muppala) Location Services and Maps 1 Loca%on Support in Android COMP 355 (Muppala) Location Services and Maps 1 Loca%on Services in Android Loca%on capabili%es for applica%ons supported through the classes in android.loca%on package and Google

More information

Using Mobile Devices for Campus Orientation with QR-Codes. Group 11 Jake, Jarrod, Aaron, Tevita

Using Mobile Devices for Campus Orientation with QR-Codes. Group 11 Jake, Jarrod, Aaron, Tevita Using Mobile Devices for Campus Orientation with QR-Codes Group 11 Jake, Jarrod, Aaron, Tevita Motivation Thousands of new students every year Unfamiliar locations and campus layout Current Orientation

More information

Android Programming (5 Days)

Android Programming (5 Days) www.peaklearningllc.com Android Programming (5 Days) Course Description Android is an open source platform for mobile computing. Applications are developed using familiar Java and Eclipse tools. This Android

More information

USER MANUAL. Quick Maps TABLE OF CONTENTS. Version: 2.1

USER MANUAL. Quick Maps TABLE OF CONTENTS. Version: 2.1 USER MANUAL Quick Maps Version: 2.1 Compatibility: Microsoft Dynamics CRM 2016(v8.0) and above TABLE OF CONTENTS Introduction... 2 Benefits of Quick Maps... 2 Prerequisites... 2 Installation & Configuration...

More information

Software Engineering Large Practical

Software Engineering Large Practical 1 Software Engineering Large Practical Stephen Gilmore (Stephen.Gilmore@ed.ac.uk) School of Informatics Document version 1.0. Issued on: September 28, 2016 About The Software Engineering Large Practical

More information

Copyright

Copyright Copyright NataliaS@portnov.com 1 EMULATORS vs Real Devices USER EXPERIENCE AND USABILITY User Interactions Real occurring events Overall performance Consistency in results SPECTRUM OF DEVICE CONFIGURATIONS

More information

LPGPU2 Font Renderer App

LPGPU2 Font Renderer App LPGPU2 Font Renderer App Performance Analysis 2 Introduction As part of LPGPU2 Work Package 3, a font rendering app was developed to research the profiling characteristics of different font rendering algorithms.

More information

White Paper: Delivering Enterprise Web Applications on the Curl Platform

White Paper: Delivering Enterprise Web Applications on the Curl Platform White Paper: Delivering Enterprise Web Applications on the Curl Platform Table of Contents Table of Contents Executive Summary... 1 Introduction... 2 Background... 2 Challenges... 2 The Curl Solution...

More information

Wanderlust Kye Kim - Visual Designer, Developer KiJung Park - UX Designer, Developer Julia Truitt - Developer, Designer

Wanderlust Kye Kim - Visual Designer, Developer KiJung Park - UX Designer, Developer Julia Truitt - Developer, Designer CS 147 Assignment 8 Local Community Studio Wanderlust Kye Kim - Visual Designer, Developer KiJung Park - UX Designer, Developer Julia Truitt - Developer, Designer Value Proposition: Explore More, Worry

More information

Presented by: Megan Bishop & Courtney Valentine

Presented by: Megan Bishop & Courtney Valentine Presented by: Megan Bishop & Courtney Valentine Early navigators relied on landmarks, major constellations, and the sun s position in the sky to determine latitude and longitude Now we have location- based

More information

Milestone Systems. XProtect MIP SDK Application Catalog

Milestone Systems. XProtect MIP SDK Application Catalog Milestone Systems XProtect MIP SDK Application Catalog Contents Scope for this document... 4 Introduction to Milestone Integration Platform Software Development Kit (MIP SDK)... 5 Protocol integration...

More information

Educational Fusion. Implementing a Production Quality User Interface With JFC

Educational Fusion. Implementing a Production Quality User Interface With JFC Educational Fusion Implementing a Production Quality User Interface With JFC Kevin Kennedy Prof. Seth Teller 6.199 May 1999 Abstract Educational Fusion is a online algorithmic teaching program implemented

More information

Android Essentials with Java

Android Essentials with Java Android Essentials with Java Before You Program o Exercise in algorithm generation Getting Started o Using IntelliJ CE Using Variables and Values o Store data in typed variables Static Methods o Write

More information

Lehigh Walking Wizard Final Report Steven Costa & Zhi Huang

Lehigh Walking Wizard Final Report Steven Costa & Zhi Huang Lehigh Walking Wizard Final Report Steven Costa & Zhi Huang Table of Contents I. Executive Summary II. Introduction & Motivation a. What is the Problem? b. Why is it interesting/important? c. How do you

More information

NTS A NAVIGATION TRACKER SYSTEM

NTS A NAVIGATION TRACKER SYSTEM NTS A NAVIGATION TRACKER SYSTEM Nitin Tooteja 1, Prerna Ahuja 2, Shanu Sharma 3 1 Student, Computer Science & Engineering, Amity University, Uttar Pradesh, India, ntooteja_30@yahoo.co.in 2 Student, Computer

More information

Software Design Description Report

Software Design Description Report 2015 Software Design Description Report CodeBenders Haldun Yıldız 1819663 Onur Aydınay 1819002 Deniz Can Yüksel 1819697 Ali Şihab Akcan 1818871 TABLE OF CONTENTS 1 Overview... 3 1.1 Scope... 3 1.2 Purpose...

More information

MicroSurvey Users: How to Report a Bug

MicroSurvey Users: How to Report a Bug MicroSurvey Users: How to Report a Bug Step 1: Categorize the Issue If you encounter a problem, as a first step it is important to categorize the issue as either: A Product Knowledge or Training issue:

More information

Software Engineering Large Practical

Software Engineering Large Practical Software Engineering Large Practical Stephen Gilmore (Stephen.Gilmore@ed.ac.uk) School of Informatics September 21, 2016 About The Software Engineering Large Practical is a 20 point Level 9 course which

More information

CS 4518 Mobile and Ubiquitous Computing Lecture 10: Location-Aware Computing Emmanuel Agu

CS 4518 Mobile and Ubiquitous Computing Lecture 10: Location-Aware Computing Emmanuel Agu CS 4518 Mobile and Ubiquitous Computing Lecture 10: Location-Aware Computing Emmanuel Agu Reminder: Final Project 1-slide from group next Monday (2/6): 2/40 of final project grade Slide should contain

More information

ECE1778: Creative Applications for Mobile Devices. Mover-bot. Android-based Mobile Robotics Development Platform

ECE1778: Creative Applications for Mobile Devices. Mover-bot. Android-based Mobile Robotics Development Platform ECE1778: Creative Applications for Mobile Devices Mover-bot Android-based Mobile Robotics Development Platform and Fitsum Andargie Word count: 1639 4/8/2012 0 Introduction: Traditionally, research in the

More information

Ecocion Facility Management System Alex Anderson Niles Hacking Ryan Shipp June 16, 2015

Ecocion Facility Management System Alex Anderson Niles Hacking Ryan Shipp June 16, 2015 Ecocion Facility Management System Alex Anderson Niles Hacking Ryan Shipp June 16, 2015 1 Table of Contents 1. Introduction 2 1.1. Client Description 1.2. Product Vision 2. Requirements. 2 2.1. Functional

More information

Programming in Android. Nick Bopp

Programming in Android. Nick Bopp Programming in Android Nick Bopp nbopp@usc.edu Types of Classes Activity This is the main Android class that you will be using. These are actively displayed on the screen and allow for user interaction.

More information

Chapter 8: GPS Clustering and Analytics

Chapter 8: GPS Clustering and Analytics Chapter 8: GPS Clustering and Analytics Location information is crucial for analyzing sensor data and health inferences from mobile and wearable devices. For example, let us say you monitored your stress

More information

Optimizing Your Android Applications

Optimizing Your Android Applications Optimizing Your Android Applications Alexander Nelson November 27th, 2017 University of Arkansas - Department of Computer Science and Computer Engineering The Problem Reminder Immediacy and responsiveness

More information

Worksheet Answer Key: Scanning and Mapping Projects > Mine Mapping > Investigation 2

Worksheet Answer Key: Scanning and Mapping Projects > Mine Mapping > Investigation 2 Worksheet Answer Key: Scanning and Mapping Projects > Mine Mapping > Investigation 2 Ruler Graph: Analyze your graph 1. Examine the shape formed by the connected dots. i. Does the connected graph create

More information

Android App Development

Android App Development Android App Development Course Contents: Android app development Course Benefit: You will learn how to Use Advance Features of Android with LIVE PROJECTS Original Fees: 15000 per student. Corporate Discount

More information

ArcGIS Runtime: Building Cross-Platform Apps. Rex Hansen Mark Baird Michael Tims Morten Nielsen

ArcGIS Runtime: Building Cross-Platform Apps. Rex Hansen Mark Baird Michael Tims Morten Nielsen ArcGIS Runtime: Building Cross-Platform Apps Rex Hansen Mark Baird Michael Tims Morten Nielsen Agenda Cross-platform review ArcGIS Runtime cross-platform options - Java - Qt -.NET ArcGIS Runtime: Building

More information

Error Analysis, Statistics and Graphing

Error Analysis, Statistics and Graphing Error Analysis, Statistics and Graphing This semester, most of labs we require us to calculate a numerical answer based on the data we obtain. A hard question to answer in most cases is how good is your

More information

Introduction to Xamarin Cross Platform Mobile App Development

Introduction to Xamarin Cross Platform Mobile App Development Introduction to Xamarin Cross Platform Mobile App Development Summary: In this document, we talk about the unique ability to create native ios, Android, Mac and Windows apps using C# making Xamarin, a

More information

ODK Tables Maps. Christopher Gelon

ODK Tables Maps. Christopher Gelon ODK Tables Maps Christopher Gelon Department of Computer Science and Engineering University of Washington, Seattle, WA [USA] cgelon@cse.uw.edu ABSTRACT Open Data Kit (ODK) [1] is a set of open source tools

More information

Uber Push and Subscribe Database

Uber Push and Subscribe Database Uber Push and Subscribe Database June 21, 2016 Clifford Boyce Kyle DiSandro Richard Komarovskiy Austin Schussler Table of Contents 1. Introduction 2 a. Client Description 2 b. Product Vision 2 2. Requirements

More information

Efficiency of Java Code for Mobile Application Development

Efficiency of Java Code for Mobile Application Development 1. Introduction Mobiles applications are written in many programing codes. Mobile application beginners assume that Java programming best practices are equally applicable to mobiles applications programming.

More information

Upcoming Assignments Quiz today Web Ad due Monday, February 22 Lab 5 due Wednesday, February 24 Alpha Version due Friday, February 26

Upcoming Assignments Quiz today Web Ad due Monday, February 22 Lab 5 due Wednesday, February 24 Alpha Version due Friday, February 26 Upcoming Assignments Quiz today Web Ad due Monday, February 22 Lab 5 due Wednesday, February 24 Alpha Version due Friday, February 26 To be reviewed by a few class members Usability study by CPE 484 students

More information

Android Programming in Bluetooth Cochlea Group

Android Programming in Bluetooth Cochlea Group Android Programming in Bluetooth Cochlea Group Zijian Zhao Abstract: My project is mainly android programming work in the Bluetooth Cochlea Group. In this report I will first introduce the background of

More information

CS378 -Mobile Computing. Maps

CS378 -Mobile Computing. Maps CS378 -Mobile Computing Maps Using Google Maps Like other web services requires an API key from Google http://code.google.com/android/addons/google-apis/mapkey.html required to use MapViews Must: Register

More information

Android Application Development Course 28 Contact Hours

Android Application Development Course 28 Contact Hours Android Application Development Course 28 Contact Hours Course Overview This course that provides the required knowledge and skills to design and build a complete Androidâ application. It delivers an extensive

More information

quick start manual PERSONAL NAVIGATOR

quick start manual PERSONAL NAVIGATOR quick start manual foretrex 301 and 401 PERSONAL NAVIGATOR Battery Information The Foretrex operates on two AAA batteries. Use alkaline or NiMH batteries. Use precharged NiMH batteries for best results.

More information

Critical Design Review. Persuasive Social Games

Critical Design Review. Persuasive Social Games Critical Design Review Persuasive Social Games Steve Hanson Scott Lee Prince Woodrow Fernando Salazar Department of Computer Science and Engineering Texas A&M University March 7, 2011 TAMU CSCE 483 Critical

More information

Strengths: Mobile Web App: Weaknesses: Bibliography:... 22

Strengths: Mobile Web App: Weaknesses: Bibliography:... 22 Table of Contents Abstract:... 3 Introduction:... 4 Existing Applications:... 5 Features:... 6 Personal Experience of Run Keeper:... 6 MapMyRun:... 7 Features:... 8 Personal Experience with MapMyRun:...

More information

ANDROID SYLLABUS. Advanced Android

ANDROID SYLLABUS. Advanced Android Advanced Android 1) Introduction To Mobile Apps I. Why we Need Mobile Apps II. Different Kinds of Mobile Apps III. Briefly about Android 2) Introduction Android I. History Behind Android Development II.

More information

Android Basics. Android UI Architecture. Android UI 1

Android Basics. Android UI Architecture. Android UI 1 Android Basics Android UI Architecture Android UI 1 Android Design Constraints Limited resources like memory, processing, battery à Android stops your app when not in use Primarily touch interaction à

More information

Personal Health Assistant: Final Report Prepared by K. Morillo, J. Redway, and I. Smyrnow Version Date April 29, 2010 Personal Health Assistant

Personal Health Assistant: Final Report Prepared by K. Morillo, J. Redway, and I. Smyrnow Version Date April 29, 2010 Personal Health Assistant Personal Health Assistant Ishmael Smyrnow Kevin Morillo James Redway CSE 293 Final Report Table of Contents 0... 3 1...General Overview... 3 1.1 Introduction... 3 1.2 Goal...3 1.3 Overview... 3 2... Server

More information

3CX Mobile Device Manager

3CX Mobile Device Manager 3CX Mobile Device Manager Manual 1 Copyright 2013, 3CX Ltd. http://www.3cx.com E-mail: info@3cx.com Information in this document is subject to change without notice. Companies names and data used in examples

More information

Computer Vision Based Route Mapping

Computer Vision Based Route Mapping Computer Vision Based Route Mapping by Ryan Kehlenbeck and Zack Cody Department of Computer Science and Software Engineering California Polytechnic State University, San Luis Obispo June 2017 Abstract

More information

Learn to develop.net applications and master related technologies.

Learn to develop.net applications and master related technologies. Courses Software Development Learn to develop.net applications and master related technologies. Software Development with Design These courses offer a great combination of both.net programming using Visual

More information

ArcGIS Runtime: Building Cross-Platform Apps. Mike Branscomb Michael Tims Tyler Schiewe

ArcGIS Runtime: Building Cross-Platform Apps. Mike Branscomb Michael Tims Tyler Schiewe ArcGIS Runtime: Building Cross-Platform Apps Mike Branscomb Michael Tims Tyler Schiewe Agenda Cross-platform review ArcGIS Runtime cross-platform options - Java - Qt -.NET Native vs Web Native strategies

More information

Matt Usifer 4/28/2016 Artificial Intelligence Project Report Fast Blue Train: Finding the Optimal Route Introduction Travel planning is a vital and

Matt Usifer 4/28/2016 Artificial Intelligence Project Report Fast Blue Train: Finding the Optimal Route Introduction Travel planning is a vital and Matt Usifer 4/28/2016 Artificial Intelligence Project Report Fast Blue Train: Finding the Optimal Route Introduction Travel planning is a vital and innate human skill, and this has been the case throughout

More information

Chapter 5. Track Geometry Data Analysis

Chapter 5. Track Geometry Data Analysis Chapter Track Geometry Data Analysis This chapter explains how and why the data collected for the track geometry was manipulated. The results of these studies in the time and frequency domain are addressed.

More information

ODK Tables Graphing Tool

ODK Tables Graphing Tool ODK Tables Graphing Tool Nathan Brandes, Gaetano Borriello, Waylon Brunette, Samuel Sudar, Mitchell Sundt Department of Computer Science and Engineering University of Washington, Seattle, WA [USA] {nfb2,

More information

Course Learning Outcomes (CLO): Student Outcomes (SO):

Course Learning Outcomes (CLO): Student Outcomes (SO): Course Coverage Course Learning Outcomes (CLO): 1. Understand the technical limitations and challenges posed by current mobile devices and wireless communications; be able to evaluate and select appropriate

More information

Cursor Design Considerations For the Pointer-based Television

Cursor Design Considerations For the Pointer-based Television Hillcrest Labs Design Note Cursor Design Considerations For the Pointer-based Television Designing the cursor for a pointing-based television must consider factors that differ from the implementation of

More information

SOFTWARE REQUIREMENTS ENGINEERING LECTURE # 7 TEAM SKILL 2: UNDERSTANDING USER AND STAKEHOLDER NEEDS REQUIREMENT ELICITATION TECHNIQUES-IV

SOFTWARE REQUIREMENTS ENGINEERING LECTURE # 7 TEAM SKILL 2: UNDERSTANDING USER AND STAKEHOLDER NEEDS REQUIREMENT ELICITATION TECHNIQUES-IV 1 SOFTWARE REQUIREMENTS ENGINEERING LECTURE # 7 TEAM SKILL 2: UNDERSTANDING USER AND STAKEHOLDER NEEDS REQUIREMENT ELICITATION TECHNIQUES-IV 12 th June, 2013 Instructor Information 2 Course Instructor:

More information

INTRODUCTION. 2

INTRODUCTION. 2 1 INTRODUCTION It is of no secret that Android is loved by millions of people around the world. Created and developed by Google, it would be most developers dream job. That being said, there are a lot

More information

Outline. Background. Motivation. Developer meetings. Meeting outcome. Marcus Oskarsson Page 2

Outline. Background. Motivation. Developer meetings. Meeting outcome. Marcus Oskarsson Page 2 1 Outline Background Motivation Developer meetings Meeting outcome Page 2 UI API - Background Matias gave a talk less is more at the last meeting (http://mxcube.github.io/mxcube/doc/meetings_2018_diamond/mxcubemeeting_dls_lessismore.pdf)

More information

Project Name. The Eclipse Integrated Computational Environment. Jay Jay Billings, ORNL Parent Project. None selected yet.

Project Name. The Eclipse Integrated Computational Environment. Jay Jay Billings, ORNL Parent Project. None selected yet. Project Name The Eclipse Integrated Computational Environment Jay Jay Billings, ORNL 20140219 Parent Project None selected yet. Background The science and engineering community relies heavily on modeling

More information

INTRODUCTION TO MIFLEET. June Support Information Robert Richey

INTRODUCTION TO MIFLEET. June Support Information  Robert Richey June 2016 Support Information fleetsales@mifleet.us fleetsupport@mifleet.us Robert Richey rrichey@dcsbusiness.com Table of Contents Basics... 3 Terms... 3 Tool tips... 3 Menu buttons... 3 Access Tab (Permissions)...

More information

User Guide Preface Readme Audience Vocabulary Navigation

User Guide Preface Readme Audience Vocabulary Navigation User Guide AJ De Las Alas, Tiffany Chan, Stephanie Tran, Viet Tran 1.0 Preface 1.1 Readme DELTA is an application that belongs to Julie Schweitzer s research group. After the application is opened, the

More information

A STUDY OF ANDROID OPERATING SYSTEM WITH RESPECT WITH USERS SATISFACTION

A STUDY OF ANDROID OPERATING SYSTEM WITH RESPECT WITH USERS SATISFACTION A STUDY OF ANDROID OPERATING SYSTEM WITH RESPECT WITH USERS SATISFACTION Ashish A Kulkarni 1, Pooja A Kulkarni 2 1 Assistant Professor, MIT School of Management Pune, (India) 2 Assistant Professor, NBN

More information

1. (True/False) Latitude measures degrees east or west of the Prime Meridian. 2. Which is a valid format for Latitude/Longitude measurements? a.

1. (True/False) Latitude measures degrees east or west of the Prime Meridian. 2. Which is a valid format for Latitude/Longitude measurements? a. 1. (True/False) Latitude measures degrees east or west of the Prime Meridian. 2. Which is a valid format for Latitude/Longitude measurements? a. hours:minutes:seconds b. degrees:minutes:seconds c. degrees:seconds

More information

ANDROID APPLICATIONS

ANDROID APPLICATIONS ANDROID APPLICATIONS Team name: E-Buzz Team members:ishendra Agarwal Salman Ahmad Khan Manas Bhatnagar Prateek Sahu Team mentors:mohit Agarwal Nikhil Gupta * BASIC AIM Our basic aim was to construct an

More information

CS 403X Mobile and Ubiquitous Computing Lecture 5: Web Services, Broadcast Receivers, Tracking Location, SQLite Databases Emmanuel Agu

CS 403X Mobile and Ubiquitous Computing Lecture 5: Web Services, Broadcast Receivers, Tracking Location, SQLite Databases Emmanuel Agu CS 403X Mobile and Ubiquitous Computing Lecture 5: Web Services, Broadcast Receivers, Tracking Location, SQLite Databases Emmanuel Agu Web Services What are Web Services? Means to call a remote method

More information

THE FUTURE OF PERSONALIZATION IS VISUAL WHITE PAPER

THE FUTURE OF PERSONALIZATION IS VISUAL WHITE PAPER WHITE PAPER The Future of Personalization is Visual 1 It s hard to believe that ecommerce has been around for more than two decades, and juggernaut sites like Amazon and ebay were first launched in the

More information

Android App Development

Android App Development Android App Development Outline Introduction Android Fundamentals Android Studio Tutorials Introduction What is Android? A software platform and operating system for mobile devices Based on the Linux kernel

More information

Ctrack Online User Guide

Ctrack Online User Guide Fleetstar Online A Guide to Winter Maintenance Reporting v1.1 Ctrack Online User Guide Title: Ctrack Online Quickstart Guide Date: 18/07/2013 Version: 1.0 Table of Contents 1. Ctrack Online Introduction...

More information

Android" Application Development SAMS. Sams Teach Yourself. Shane Conder. Lauren Darcey. Second Edition

Android Application Development SAMS. Sams Teach Yourself. Shane Conder. Lauren Darcey. Second Edition Lauren Darcey Shane Conder Sams Teach Yourself Android" Application Development Second Edition SAMS 800 East 96th Street, Indianapolis, Indiana, 46240 USA Table of Contents Introduction 1 Who Should Read

More information

Andriod Component Development Documentation

Andriod Component Development Documentation Andriod Component Development Documentation Group 3.1 Sophia Wilberscheid & Aleksandar Colic Table of Contents Introduction...1 Research - Droid Draw & Other Libraries...1 Developing the Interface...3

More information

MC Android Programming

MC Android Programming MC1921 - Android Programming Duration: 5 days Course Price: $3,395 Course Description Android is an open source platform for mobile computing. Applications are developed using familiar Java and Eclipse

More information

Fall UI Design and Implementation 1

Fall UI Design and Implementation 1 Fall 2005 6.831 UI Design and Implementation 1 1 Suggested by Daniel Swanton Fall 2005 6.831 UI Design and Implementation 2 2 Suggested by Robert Kwok Fall 2005 6.831 UI Design and Implementation 3 3 Input

More information

Bike-O-Meter User Manual

Bike-O-Meter User Manual Bike-O-Meter User Manual for BlackBerry Smartphones Version 5 Date 2012-03-27 1 Thank you for purchasing the Bike-O-Meter App from Cellimagine. The Bike-O-Meter is the only App you will need for speed

More information

How Manual Testers can execute Test Automation. White Papers. Muthiah Director of Testing. Expedux on How Manual Testers

How Manual Testers can execute Test Automation. White Papers. Muthiah Director of Testing. Expedux on How Manual Testers How Manual Testers can execute Test Automation without tool/ programming knowledge White Papers QA An exclusive Interview with Muthiah Director of Testing & Test Automation Services at Expedux on How Manual

More information

sqamethods Approach to Building Testing Automation Systems

sqamethods Approach to Building Testing Automation Systems sqamethods Approach to Building Testing Automation Systems By Leopoldo A. Gonzalez leopoldo@sqamethods.com BUILDING A TESTING AUTOMATION SYSTEM...3 OVERVIEW...3 GOALS FOR AN AUTOMATION SYSTEM...3 BEGIN

More information

FACETs. Technical Report 05/19/2010

FACETs. Technical Report 05/19/2010 F3 FACETs Technical Report 05/19/2010 PROJECT OVERVIEW... 4 BASIC REQUIREMENTS... 4 CONSTRAINTS... 5 DEVELOPMENT PROCESS... 5 PLANNED/ACTUAL SCHEDULE... 6 SYSTEM DESIGN... 6 PRODUCT AND PROCESS METRICS...

More information

Final Project: Integrating ArcGIS Server with Google Maps Creating a Southern California Wildfire Mapping Application

Final Project: Integrating ArcGIS Server with Google Maps Creating a Southern California Wildfire Mapping Application Final Project: Integrating ArcGIS Server with Google Maps Creating a Southern California Wildfire Mapping Application In the final project for this course you will be creating an integrated Google Maps

More information

The C-Suite Guide to Mobile Technologies for mhealth Development. Medical Web ExpertsTM

The C-Suite Guide to Mobile Technologies for mhealth Development. Medical Web ExpertsTM The C-Suite Guide to Mobile Technologies for mhealth Development Medical Web ExpertsTM January 2017 Executive Summary mhealth technologies are forming a more integral part of many healthcare organizations

More information

by- Salman A. Khan, Ishendra Agarwal,Prateek Sahu,Manas

by- Salman A. Khan, Ishendra Agarwal,Prateek Sahu,Manas ANDROID APPS. Bhatnagar by- Salman A. Khan, Ishendra Agarwal,Prateek Sahu,Manas # Installation of the required softwares for android Followings are the softwares and plugins need to be installed step by

More information

ABSTRACT. The main objective of this project is to develop a mobile app in android that gives a new

ABSTRACT. The main objective of this project is to develop a mobile app in android that gives a new ABSTRACT The main objective of this project is to develop a mobile app in android that gives a new perspective to social networks called event-oriented social networking. This application can build a social

More information

Contour Analysis And Visualization

Contour Analysis And Visualization Contour Analysis And Visualization Objectives : stages The objectives of Contour Analysis and Visualization can be described in the following 1. To study and analyse the contour 2. Visualize the contour

More information

METRO BUS TRACKING SYSTEM

METRO BUS TRACKING SYSTEM METRO BUS TRACKING SYSTEM Muthukumaravel M 1, Manoj Kumar M 2, Rohit Surya G R 3 1,2,3UG Scholar, Dept. Of CSE, Panimalar Engineering College, Tamil Nadu, India. 1muthukumaravel.muthuraman@gmail.com, 2

More information

A Technical Overview: Voiyager Dynamic Application Discovery

A Technical Overview: Voiyager Dynamic Application Discovery A Technical Overview: Voiyager Dynamic Application Discovery A brief look at the Voiyager architecture and how it provides the most comprehensive VoiceXML application testing and validation method available.

More information

Quick Setup Guide. Tip: We recommend you use a Vodafone SIM card. SIM cards from other networks might not work!

Quick Setup Guide. Tip: We recommend you use a Vodafone SIM card. SIM cards from other networks might not work! Owner s Manual Quick Setup Guide Insert the SIM card into the watch. The SIM slot is behind the rubber cover labelled SIM CARD on the left of the watch. Use a fingernail or other small item to prise open

More information

Spark is a mobile application that allows teachers to capture, track, and and share their students important learning moments.

Spark is a mobile application that allows teachers to capture, track, and and share their students important learning moments. Heuristic Evaluation of Spark Problem Spark is a mobile application that allows teachers to capture, track, and and share their students important learning moments. Violations Found 1 [H2-10: Help & Documentation]

More information

Produced by. Mobile Application Development. David Drohan Department of Computing & Mathematics Waterford Institute of Technology

Produced by. Mobile Application Development. David Drohan Department of Computing & Mathematics Waterford Institute of Technology Mobile Application Development Produced by David Drohan (ddrohan@wit.ie) Department of Computing & Mathematics Waterford Institute of Technology http://www.wit.ie User Interface Design" & Development -

More information

User's Guide

User's Guide Project: www.vectronic-wildlife.com Title: User's Guide Last Change: 05.03.2009 1 Login Once the web site has finished loading, its main window shows a two dimensional world map provided by Google Maps

More information

Students interpret the meaning of the point of intersection of two graphs and use analytic tools to find its coordinates.

Students interpret the meaning of the point of intersection of two graphs and use analytic tools to find its coordinates. Student Outcomes Students interpret the meaning of the point of intersection of two graphs and use analytic tools to find its coordinates. Classwork Example 1 (7 minutes) Have students read the situation

More information