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

Size: px
Start display at page:

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

Transcription

1 stolen from: Locations and Maps Build using android.location package and google maps libraries Main component to talk to is LocationManager Location Manager returned from: getsystemservice(context.location_service) get list of all LocationProviders register/unregister for location updates register/unregister for Intent to be activated if device is within a specific distance of of given lat/long Google Maps External Library com.google.android.maps package offer built-in: - downloading - rendering - caching of Maps tiles - variety of display options and controls com.google.android.maps.mapview, a subclass of ViewGroup. When the MapView has focus, it will capture: - keypresses - touch gestures to pan and zoom the map automatically - handle network requests for additional maps tiles. Provides all of the UI elements necessary for users to control the map Use MapView class methods to control the MapView programmatically and draw a number of Overlay types on top of the map. Lets you work with Maps data as you would other types of Views Not part of the standard Android library. To learn more about the Maps external library: Location You can use both GPS and the Network Location Provider, or just one. Challenges: - Integrating GPS, Cell-ID and Wi-Fi - User movement - Varying Accuracy 1

2 Obtaining Location Updates - tell LocationManager who to notify when location changes requestlocationupdates(locationlistener) LocationListener implements the following: - abstract void onlocationchanged(location location) Called when the location has changed. - abstract void onproviderdisabled(string provider) Called when the provider is disabled by the user. - abstract void onproviderenabled(string provider) Called when the provider is enabled by the user. - abstract void onstatuschanged( String provider, int status, Bundle extras) Called when the provider status changes For Example: // Acquire a reference to the system Location Manager LocationManager locationmanager = (LocationManager) this.getsystemservice(context.location_service); // Define a listener that responds to location updates LocationListener locationlistener = new LocationListener() { public void onlocationchanged(location location) { // Called when a new location is found by the network location provider. makeuseofnewlocation(location); public void onstatuschanged(string provider, int status, Bundle extras) { public void onproviderenabled(string provider) { public void onproviderdisabled(string provider) { ; // Register the listener with the Location Manager to receive location updates locationmanager.requestlocationupdates(locationmanager.network_provider, 0, 0, locationlistener); The first parameter in requestlocationupdates() is the type of location provider to use (in this case, the Network Location Provider for cell tower and Wi-Fi based location) You can control the frequency at which your listener receives updates with the second and third parameter the second is the minimum time interval between notifications and the third is the minimum change in distance between notifications setting both to zero requests location notifications as frequently as possible. The last parameter is your LocationListener, which receives callbacks for location updates. To request location updates from the GPS provider, substitute GPS_PROVIDER for NETWORK_PROVIDER. You can also request location updates from both the GPS and the Network Location Provider by calling requestlocationupdates() twice once for NETWORK_PROVIDER and once for GPS_PROVIDER. In order to receive location updates from NETWORK_PROVIDER or GPS_PROVIDER, you must request user permission by declaring either the ACCESS_COARSE_LOCATION or ACCESS_FINE_LOCATION permission, respectively, in your Android manifest file. 2

3 Model for Best Performance A) Problems - accuracy not optimal - device moves - multiple ways to obtain location - limited battery life B) Solution Define a model that specifies: - how location is determined - when to start and stop listening for updates - when to use cached information C) Example 1) Start Application 2) After a certain amount of time, start listening for updates on location from chosen providers 3) Maintain a current "best guess" of location 4) Stop listening for updates 5) Remember best guess D) Listening warning: long periods of listening uses battery power - short periods might compromise accuracy - to start listening, call requestlocationupdates() LocationProvider locationprovider = LocationManager.NETWORK_PROVIDER; //get location using network // LocationProvider locationprovider = LocationManager.GPS_PROVIDER; //use GPS location data: locationmanager.requestlocationupdates(locationprovider, 0, 0, locationlistener); //<-- look at APIs - getting cached copy of location: LocationProvider locationprovider = LocationManager.NETWORK_PROVIDER; // Or use LocationManager.GPS_PROVIDER Location lastknownlocation = locationmanager.getlastknownlocation(locationprovider); - to stop listening, call: locationmanager.removeupdates(locationlistener) 3

4 - Making a best guess -- most recent reading is not necessarily the most accurate - your program might: - Check if retrieved location significantly more recent than previous - Check if new location claims significantly better accuracy than previous - Check provider producing new info -- is it trusted more than previous For example: private static final int TWO_MINUTES = 1000 * 60 * 2; /** Determines whether one Location reading is better than the current Location fix location The new Location that you want to evaluate currentbestlocation The current Location fix, to which you want to compare the new one */ protected boolean isbetterlocation(location location, Location currentbestlocation) { if (currentbestlocation == null) { // A new location is always better than no location // Check whether the new location fix is newer or older long timedelta = location.gettime() - currentbestlocation.gettime(); boolean issignificantlynewer = timedelta > TWO_MINUTES; boolean issignificantlyolder = timedelta < -TWO_MINUTES; boolean isnewer = timedelta > 0; // If it's been more than two minutes since the current location, use the new location // because the user has likely moved if (issignificantlynewer) { // If the new location is more than two minutes older, it must be worse else if (issignificantlyolder) { return false; // Check whether the new location fix is more or less accurate int accuracydelta = (int) (location.getaccuracy() - currentbestlocation.getaccuracy()); boolean islessaccurate = accuracydelta > 0; boolean ismoreaccurate = accuracydelta < 0; boolean issignificantlylessaccurate = accuracydelta > 200; // Check if the old and new location are from the same provider boolean isfromsameprovider = issameprovider(location.getprovider(), currentbestlocation.getprovider()); // Determine location quality using a combination of timeliness and accuracy if (ismoreaccurate) { else if (isnewer &&!islessaccurate) { else if (isnewer &&!issignificantlylessaccurate && isfromsameprovider) { return false; //or: return ismoreaccurate // isnewer &&!islessaccurate // isnewer &&!issignificantlylessaccurate && isfromsameprovider; /** Checks whether two providers are the same */ private boolean issameprovider(string provider1, String provider2) { if (provider1 == null) { return provider2 == null; return provider1.equals(provider2); 4

5 return provider1.equals(provider2); To save power, try the following i) Reduce the size of the listening window ii) Get updates less frequently iii) Use fewer providers Testing: Mock Location Data - Eclipse: 1) Make sure a device is selected 2) Window -> Show View -> Other -> Emulator Control now, Enter GPS coordinates, provide a GPX file, or KML file - DDMS: (see: Manually send long/lat data to device or Use GPX file or Use KML file - Use emulator + command line 1) launch your app in Android emulator launch terminal/console in SDKs /tools directory 2) telnet localhost <console-port> 3) Send a geo fix location with longitude, latitude and altitude (see: geo fix

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

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

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 Help. Section 8. Eric Xiao

Android Help. Section 8. Eric Xiao Android Help Section 8 Eric Xiao The Midterm That happened Any residual questions? New Assignment! Make a low-fi prototype Must be interactive Use balsamiq or paper Test it with users 3 tasks Test task

More information

Android Security Lab WS 2013/14 Lab 2: Android Permission System

Android Security Lab WS 2013/14 Lab 2: Android Permission System Saarland University Information Security & Cryptography Group Prof. Dr. Michael Backes saarland university computer science Android Security Lab WS 2013/14 M.Sc. Sven Bugiel Version 1.2 (November 12, 2013)

More information

An Overview of the Android Programming

An Overview of the Android Programming ID2212 Network Programming with Java Lecture 14 An Overview of the Android Programming Hooman Peiro Sajjad KTH/ICT/SCS HT 2016 References http://developer.android.com/training/index.html Developing Android

More information

Spring Lecture 9 Lecturer: Omid Jafarinezhad

Spring Lecture 9 Lecturer: Omid Jafarinezhad Mobile Programming Sharif University of Technology Spring 2016 - Lecture 9 Lecturer: Omid Jafarinezhad Sensors Overview Most Android-powered devices have built-in sensors that measure motion, orientation,

More information

Geolocation in HTML5 and Android. Kiet Nguyen

Geolocation in HTML5 and Android. Kiet Nguyen Geolocation in HTML5 and Android Kiet Nguyen Agenda Introduction to Geolocation Geolocation in Android Geolocation in HTML5 Conclusion Introduction to Geolocation To get user's location Common methods:

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

Object-Oriented Databases Object-Relational Mappings and Frameworks. Alexandre de Spindler Department of Computer Science

Object-Oriented Databases Object-Relational Mappings and Frameworks. Alexandre de Spindler Department of Computer Science Object-Oriented Databases Object-Relational Mappings and Frameworks Challenges Development of software that runs on smart phones. Data needs to outlive program execution Use of sensors Integration with

More information

Mobile Programming Lecture 9. Bound Services, Location, Sensors, IntentFilter

Mobile Programming Lecture 9. Bound Services, Location, Sensors, IntentFilter Mobile Programming Lecture 9 Bound Services, Location, Sensors, IntentFilter Agenda Bound Services Location Sensors Starting an Activity for a Result Understanding Implicit Intents Bound Service When you

More information

1. Location Services. 1.1 GPS Location. 1. Create the Android application with the following attributes. Application Name: MyLocation

1. Location Services. 1.1 GPS Location. 1. Create the Android application with the following attributes. Application Name: MyLocation 1. Location Services 1.1 GPS Location 1. Create the Android application with the following attributes. Application Name: MyLocation Project Name: Package Name: MyLocation com.example.mylocation 2. Put

More information

CS 234/334 Lab 1: Android Jump Start

CS 234/334 Lab 1: Android Jump Start CS 234/334 Lab 1: Android Jump Start Distributed: January 7, 2014 Due: Friday, January 10 or Monday, January 13 (in-person check off in Mobile Lab, Ry 167). No late assignments. Introduction The goal of

More information

Mobila applikationer och trådlösa nät

Mobila applikationer och trådlösa nät Mobila applikationer och trådlösa nät HI1033 Lecture 8 Today s topics Location Based Services Google Maps API MultiMedia Location Based Services LocationManager provides access to location based services

More information

Covers Android 2 IN ACTION SECOND EDITION. W. Frank Ableson Robi Sen Chris King MANNING

Covers Android 2 IN ACTION SECOND EDITION. W. Frank Ableson Robi Sen Chris King MANNING Covers Android 2 IN ACTION SECOND EDITION W. Frank Ableson Robi Sen Chris King MANNING Android in Action Second Edition by W. Frank Ableson, Robi Sen, Chris King Chapter 11 Copyright 2011 Manning Publications

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

Route Tracking. Project Proposal

Route Tracking. Project Proposal 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

More information

A Tour of Android. and some of it s APIs. Bryan Noll

A Tour of Android. and some of it s APIs. Bryan Noll A Tour of Android and some of it s APIs Bryan Noll Me professionally A good starting point http://neidetcher.blogspot.com/2009/07/android-presentation-from-denver-open.html The OS The VM Basic Views Basic

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

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

CS 528 Mobile and Ubiquitous Computing Lecture 5b: Location-Aware Computing Emmanuel Agu

CS 528 Mobile and Ubiquitous Computing Lecture 5b: Location-Aware Computing Emmanuel Agu CS 528 Mobile and Ubiquitous Computing Lecture 5b: Location-Aware Computing Emmanuel Agu Location-Aware Computing Definition: Location-aware applications generate outputs/behaviors that depend on a user

More information

Mensch-Maschine-Interaktion 2 Übung 12

Mensch-Maschine-Interaktion 2 Übung 12 Mensch-Maschine-Interaktion 2 Übung 12 Ludwig-Maximilians-Universität München Wintersemester 2010/2011 Michael Rohs 1 Preview Android Development Tips Location-Based Services and Maps Media Framework Android

More information

Introduction to Android Application Development. Mike Kvintus Principal Engineer JDSU

Introduction to Android Application Development. Mike Kvintus Principal Engineer JDSU Introduction to Android Application Development Mike Kvintus Principal Engineer JDSU Agenda Android Background What is Android? Android Fundamentals Getting Started with App Development Demo Tips/Links

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

DEVELOPMENT OF PUBLIC FACILITY AND HOUSEHOLD LOCATOR TOOL USING MOBILE GIS AND ANDROID TECHNOLOGY

DEVELOPMENT OF PUBLIC FACILITY AND HOUSEHOLD LOCATOR TOOL USING MOBILE GIS AND ANDROID TECHNOLOGY DEVELOPMENT OF PUBLIC FACILITY AND HOUSEHOLD LOCATOR TOOL USING MOBILE GIS AND ANDROID TECHNOLOGY Engr. Alexander T. Demetillo, Engr. Michelle V. Japitana, Sonny S. Norca CLAIMS-GIS Project, College 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

Getting Started ArcGIS Runtime SDK for Android. Andy

Getting Started ArcGIS Runtime SDK for Android. Andy Getting Started ArcGIS Runtime SDK for Android Andy Gup @agup Agenda Introduction Runtime SDK - Tools and features Maps & Layers Tasks Editing GPS Offline Capabilities Summary My contact info Andy Gup,

More information

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

Monday schedule on Tuesday Great time to work with team on Course Project

Monday schedule on Tuesday Great time to work with team on Course Project Upcoming Assignments Code Review due Tuesday, February 16 2:10pm Pre-alpha version due Wednesday, February 17 Lab 5 due Monday, February 22 Read Chapter 7 (Quiz next Friday) Read article by Friday (Disaster

More information

Designing Apps Using The WebView Control

Designing Apps Using The WebView Control 28 Designing Apps Using The Control Victor Matos Cleveland State University Notes are based on: Android Developers http://developer.android.com/index.html The Busy Coder's Guide to Advanced Android Development

More information

Android Programming Lecture 8: Activities, Odds & Ends, Two New Views 9/28/2011

Android Programming Lecture 8: Activities, Odds & Ends, Two New Views 9/28/2011 Android Programming Lecture 8: Activities, Odds & Ends, Two New Views 9/28/2011 Return Values from Activities: Callee Side How does the Sub-Activity send back a response? Create an Intent to return Stuff

More information

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

CS 4518 Mobile and Ubiquitous Computing Lecture 7: Location-Aware Computing Emmanuel Agu CS 4518 Mobile and Ubiquitous Computing Lecture 7: Location-Aware Computing Emmanuel Agu Administrivia Project 3 mailed out tomorrow, due next Thursday Graded papers for projects 0 and 1 now on InstructAssist

More information

Answers to Exercises

Answers to Exercises Answers to Exercises CHAPTER 1 ANSWERS 1. What is an AVD? Ans: An AVD is an Android Virtual Device. It represents an Android emulator, which emulates a particular configuration of an actual Android device.

More information

Mobile Application (Design and) Development

Mobile Application (Design and) Development Mobile Application (Design and) Development 11 th class Prof. Stephen Intille s.intille@neu.edu Northeastern University 1 Q&A Northeastern University 2 Today Services Location and sensing Design paper

More information

Press project on the left toolbar if it doesn t show an overview of the app yet.

Press project on the left toolbar if it doesn t show an overview of the app yet. #3 Setting up the permissions needed to allow the app to use GPS. Okay! Press project on the left toolbar if it doesn t show an overview of the app yet. In this project plane, we will navigate to the manifests

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

ATC Android Application Development

ATC Android Application Development ATC Android Application Development 1. Android Framework and Android Studio b. Android Platform Architecture i. Linux Kernel ii. Hardware Abstraction Layer(HAL) iii. Android runtime iv. Native C/C++ Libraries

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

CS378 -Mobile Computing. Services and Broadcast Receivers

CS378 -Mobile Computing. Services and Broadcast Receivers CS378 -Mobile Computing Services and Broadcast Receivers Services One of the four primary application components: activities content providers services broadcast receivers 2 Services Application component

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

CQ Beacon Android SDK V2.0.1

CQ Beacon Android SDK V2.0.1 Copyright 2014 ConnectQuest, LLC 1 CQ Beacon Android SDK V2.0.1 Software Requirements: Android 4.3 or greater SDK Support Page: http://www.connectquest.com/app- developers/android- api/ The CQ SDK package

More information

Manual Android Virtual Device Failed To Load Click Details

Manual Android Virtual Device Failed To Load Click Details Manual Android Virtual Device Failed To Load Click Details i am new to android 1_i am not able to see any option after clicking on 'run as' an android virtual device that failed to load.click 'details''.i

More information

32. And this is an example on how to retrieve the messages received through NFC.

32. And this is an example on how to retrieve the messages received through NFC. 4. In Android applications the User Interface (UI) thread is the main thread. This thread is very important because it is responsible with displaying/drawing and updating UI elements and handling/dispatching

More information

Dripcast Server-less Java programming framework for Device Applications

Dripcast Server-less Java programming framework for Device Applications Dripcast Server-less Java programming framework for Device Applications Ikuo Nakagawa Dripcast Project July, 2012 Quick Try... Collecting GPS information from thousands of cabs & show location, Next, select

More information

ITG Software Engineering

ITG Software Engineering Android Security Course ID: Page 1 Last Updated 12/15/2014 Android Security ITG Software Engineering Course Overview: This 5 day course covers the Android architecture, the stack, and primary building

More information

Android. Michael Greifeneder. Image source: Android homepage

Android. Michael Greifeneder. Image source: Android homepage Android Michael Greifeneder Image source: Android homepage Inhalt Overwiew Hardware Software Development Demo Tools Basics Debugging/Emulator Location Android And Me Why I like Android Blend of Linux and

More information

Dripcast Server-less Java programming framework for Device Applications

Dripcast Server-less Java programming framework for Device Applications Dripcast Server-less Java programming framework for Device Applications Ikuo Nakagawa Dripcast Project May, 2012 Quick Try... Customer : We have thousands of sheep in a big firm. Give Android to them,

More information

Spring Lecture 5 Lecturer: Omid Jafarinezhad

Spring Lecture 5 Lecturer: Omid Jafarinezhad Mobile Programming Sharif University of Technology Spring 2016 - Lecture 5 Lecturer: Omid Jafarinezhad Storage Options Android provides several options for you to save persistent application data. The

More information

User Interface Design & Development

User Interface Design & Development User Interface Design & Development Lecture Intro to Android João Pedro Sousa SWE 632, Fall 2011 George Mason University features multitasking w/ just-in-time compiler for Dalvik-VM bytecode storage on

More information

Overview. Android Apps (Partner s App) Other Partner s App Platform. Samsung Health. Server SDK. Samsung Health. Samsung Health Server

Overview. Android Apps (Partner s App) Other Partner s App Platform. Samsung Health. Server SDK. Samsung Health. Samsung Health Server W E L C O M E T O Overview Android Apps (Partner s App) Data Service Health Android SDK Android API Samsung Health Samsung Health Server SDK Data REST API Oauth2 Other Partner s App Platform REST API

More information

ORACLE UNIVERSITY AUTHORISED EDUCATION PARTNER (WDP)

ORACLE UNIVERSITY AUTHORISED EDUCATION PARTNER (WDP) Android Syllabus Pre-requisite: C, C++, Java Programming SQL & PL SQL Chapter 1: Introduction to Android Introduction to android operating system History of android operating system Features of Android

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

CS378 -Mobile Computing. What's Next?

CS378 -Mobile Computing. What's Next? CS378 -Mobile Computing What's Next? Fragments Added in Android 3.0, a release aimed at tablets A fragment is a portion of the UI in an Activity multiple fragments can be combined into multi-paned UI fragments

More information

ANDROID APPS DEVELOPMENT FOR MOBILE GAME

ANDROID APPS DEVELOPMENT FOR MOBILE GAME ANDROID APPS DEVELOPMENT FOR MOBILE GAME Application Components Hold the content of a message (E.g. convey a request for an activity to present an image) Lecture 2: Android Layout and Permission Present

More information

Android App Development. Muhammad Sharjeel COMSATS Institute of Information Technology, Lahore

Android App Development. Muhammad Sharjeel COMSATS Institute of Information Technology, Lahore Android App Development Muhammad Sharjeel COMSATS Institute of Information Technology, Lahore Mobile devices (e.g., smartphone, tablet PCs, etc.) are increasingly becoming an essential part of human life

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

Android Application Development using Kotlin

Android Application Development using Kotlin Android Application Development using Kotlin 1. Introduction to Kotlin a. Kotlin History b. Kotlin Advantages c. How Kotlin Program Work? d. Kotlin software Prerequisites i. Installing Java JDK and JRE

More information

Android Locations. Android Smartphone Programming

Android Locations. Android Smartphone Programming Android s Android Smartphone Programming Matthias Keil / Tim Aicher Institute for Computer Science Faculty of Engineering 18. Dezember 2017 Outline 1 Internet 2 3 Summary Matthias Keil / Tim Aicher Android

More information

Questions and Answers. Q.1) Which of the following is the most ^aeuroeresource hungry ^aeuroepart of dealing with activities on android?

Questions and Answers. Q.1) Which of the following is the most ^aeuroeresource hungry ^aeuroepart of dealing with activities on android? Q.1) Which of the following is the most ^aeuroeresource hungry ^aeuroepart of dealing with activities on android? A. Closing an app. B. Suspending an app C. Opening a new app D. Restoring the most recent

More information

Avenza what does it do?

Avenza what does it do? Avenza what does it do? Avenza Maps is a fast and powerful offline map reader for mobile devices. The easiest way to get maps is to download them directly from the Avenza Map Store. It renders maps quickly

More information

Developer s overview of the Android platform

Developer s overview of the Android platform Developer s overview of the Android platform Erlend Stav SINTEF November 10, 2009 mailto:erlend.stav@sintef.no 1 Overview Vendors and licensing Application distribution Platform architecture Application

More information

ANDROID APPS (NOW WITH JELLY BEANS!) Jordan Jozwiak November 11, 2012

ANDROID APPS (NOW WITH JELLY BEANS!) Jordan Jozwiak November 11, 2012 ANDROID APPS (NOW WITH JELLY BEANS!) Jordan Jozwiak November 11, 2012 AGENDA Android v. ios Design Paradigms Setup Application Framework Demo Libraries Distribution ANDROID V. IOS Android $25 one-time

More information

INTRODUCTION TO ANDROID

INTRODUCTION TO ANDROID INTRODUCTION TO ANDROID 1 Niv Voskoboynik Ben-Gurion University Electrical and Computer Engineering Advanced computer lab 2015 2 Contents Introduction Prior learning Download and install Thread Android

More information

MARS AREA SCHOOL DISTRICT Curriculum TECHNOLOGY EDUCATION

MARS AREA SCHOOL DISTRICT Curriculum TECHNOLOGY EDUCATION Course Title: Java Technologies Grades: 10-12 Prepared by: Rob Case Course Unit: What is Java? Learn about the history of Java. Learn about compilation & Syntax. Discuss the principles of Java. Discuss

More information

Developing Android applications in Windows

Developing Android applications in Windows Developing Android applications in Windows Below you will find information about the components needed for developing Android applications and other (optional) software needed to connect to the institution

More information

OFFLINE MODE OF ANDROID

OFFLINE MODE OF ANDROID OFFLINE MODE OF ANDROID APPS @Ajit5ingh ABOUT ME new Presenter( Ajit Singh, github.com/ajitsing, www.singhajit.com, @Ajit5ingh ) AGENDA Why offline mode? What it takes to build an offline mode Architecture

More information

Mobile Application Development Android

Mobile Application Development Android Mobile Application Development Android Lecture 2 MTAT.03.262 Satish Srirama satish.srirama@ut.ee Android Lecture 1 -recap What is Android How to develop Android applications Run & debug the applications

More information

8/30/15 MOBILE COMPUTING. CSE 40814/60814 Fall How many of you. have implemented a command-line user interface?

8/30/15 MOBILE COMPUTING. CSE 40814/60814 Fall How many of you. have implemented a command-line user interface? MOBILE COMPUTING CSE 40814/60814 Fall 2015 How many of you have implemented a command-line user interface? 1 How many of you have implemented a graphical user interface? HTML/CSS Java Swing.NET Framework

More information

EMBEDDED SYSTEMS PROGRAMMING UI and Android

EMBEDDED SYSTEMS PROGRAMMING UI and Android EMBEDDED SYSTEMS PROGRAMMING 2016-17 UI and Android STANDARD GESTURES (1/2) UI classes inheriting from View allow to set listeners that respond to basic gestures. Listeners are defined by suitable interfaces.

More information

Back Country Navigator (BCN) Instructions and File Links

Back Country Navigator (BCN) Instructions and File Links Instructions and File Links for Installing My Maps in Back Country Navigator, Orux Maps, and Garmin GPS s. BobT, updated 6/10/17 This is a lengthy document since I have tried to go into great detail with

More information

RUNTIME PERMISSIONS IN ANDROID 6.0 Lecture 10a

RUNTIME PERMISSIONS IN ANDROID 6.0 Lecture 10a RUNTIME PERMISSIONS IN ANDROID 6.0 Lecture 10a COMPSCI 702 Security for Smart-Devices Muhammad Rizwan Asghar March 20, 2018 2 ANDROID 6.0 A version of the Android mobile operating system officially released

More information

Faculty Summit September 28 th, Bandung

Faculty Summit September 28 th, Bandung Faculty Summit September 28 th, Bandung rayrizaldy@gits.co.id Network and Location Location, Maps Bluetooth Traditional location APIs use GPS Location Network- based location is faster to give a result,

More information

MobiVine. A Middleware Layer to Handle Fragmentation of Platform Interfaces for Mobile Applications

MobiVine. A Middleware Layer to Handle Fragmentation of Platform Interfaces for Mobile Applications Vikas Agarwal, Sunil Goyal, Sumit Mittal, Sougata Mukherjea IBM Research India 2 nd December 2009 MobiVine A Middleware Layer to Handle Fragmentation of Platform Interfaces for Mobile Applications Mobile

More information

Android System Architecture. Android Application Fundamentals. Applications in Android. Apps in the Android OS. Program Model 8/31/2015

Android System Architecture. Android Application Fundamentals. Applications in Android. Apps in the Android OS. Program Model 8/31/2015 Android System Architecture Android Application Fundamentals Applications in Android All source code, resources, and data are compiled into a single archive file. The file uses the.apk suffix and is used

More information

MOBILE COMPUTING 2/11/18. Location-based Services: Definition. Convergence of Technologies LBS. CSE 40814/60814 Spring 2018

MOBILE COMPUTING 2/11/18. Location-based Services: Definition. Convergence of Technologies LBS. CSE 40814/60814 Spring 2018 MOBILE COMPUTING CSE 40814/60814 Spring 2018 Location-based Services: Definition LBS: A certain service that is offered to the users based on their locations. Convergence of Technologies GIS/ Spatial Database

More information

Android Camera. Alexander Nelson October 6, University of Arkansas - Department of Computer Science and Computer Engineering

Android Camera. Alexander Nelson October 6, University of Arkansas - Department of Computer Science and Computer Engineering Android Camera Alexander Nelson October 6, 2017 University of Arkansas - Department of Computer Science and Computer Engineering Why use the camera? Why not? Translate Call Learn Capture How to use the

More information

COSC 3P97 Mobile Computing

COSC 3P97 Mobile Computing COSC 3P97 Mobile Computing Mobile Computing 1.1 COSC 3P97 Prerequisites COSC 2P13, 3P32 Staff instructor: Me! teaching assistant: Steve Tkachuk Lectures (MCD205) Web COSC: http://www.cosc.brocku.ca/ COSC

More information

ITP 342 Mobile App Dev. Locations and Maps

ITP 342 Mobile App Dev. Locations and Maps ITP 342 Mobile App Dev Locations and Maps Locations and Maps Every ios device has the ability to determine where in the world it is Create a live interactive map showing any locations you like, including

More information

Android for Ubiquitous Computing Researchers. Andrew Rice University of Cambridge 17-Sep-2011

Android for Ubiquitous Computing Researchers. Andrew Rice University of Cambridge 17-Sep-2011 Android for Ubiquitous Computing Researchers Andrew Rice University of Cambridge 17-Sep-2011 Getting started Website for the tutorial: http://www.cl.cam.ac.uk/~acr31/ubicomp/ Contains links to downloads

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

Android Programming - Jelly Bean

Android Programming - Jelly Bean 1800 ULEARN (853 276) www.ddls.com.au Android Programming - Jelly Bean Length 5 days Price $4235.00 (inc GST) Overview This intensive, hands-on five-day course teaches programmers how to develop activities,

More information

ANDROID APPS DEVELOPMENT FOR MOBILE AND TABLET DEVICE (LEVEL I)

ANDROID APPS DEVELOPMENT FOR MOBILE AND TABLET DEVICE (LEVEL I) ANDROID APPS DEVELOPMENT FOR MOBILE AND TABLET DEVICE (LEVEL I) Lecture 3: Android Life Cycle and Permission Android Lifecycle An activity begins its lifecycle when entering the oncreate() state If not

More information

Hawaii Project Tutorial. Brian Zill Microsoft Research

Hawaii Project Tutorial. Brian Zill Microsoft Research Hawaii Project Tutorial Brian Zill Microsoft Research bzill@microsoft.com Talk Outline Overview of Project Illustrative Example Details of What We re Providing Primers on: Windows Mobile Development Hawaii

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

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

WELCOME REGISTERING MY ACCOUNT PROFILE ACTIVATE YOUR SAT-FI2 GETTING STARTED

WELCOME REGISTERING MY ACCOUNT PROFILE ACTIVATE YOUR SAT-FI2 GETTING STARTED QUICK START GUIDE WELCOME Thank you for purchasing a Globalstar Sat-Fi. Now you can use your smart devices to run your business and your life even when cell service isn t available. PRODUCT REQUIRES ACTIVATION

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

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

Google Maps Troubleshooting

Google Maps Troubleshooting Google Maps Troubleshooting Before you go through the troubleshooting guide below, make sure that you ve consulted the class FAQ, Google s Map Activity Tutorial, as well as these helpful resources from

More information

bada Tutorial: Locations bada

bada Tutorial: Locations bada bada Tutorial: Locations bada 1.2.0 Copyright Copyright 2010 Samsung 2010 Electronics Samsung Co., Electronics Ltd. All Co., rights Ltd. reserved. All rights reserved. 1 Contents Locations Locations Services

More information

Programming with Android: Geo-localization and Google Map Services. Luca Bedogni. Dipartimento di Scienze dell Informazione Università di Bologna

Programming with Android: Geo-localization and Google Map Services. Luca Bedogni. Dipartimento di Scienze dell Informazione Università di Bologna Programming with Android: Geo-localization and Google Map Services Luca Bedogni Dipartimento di Scienze dell Informazione Università di Bologna Outline Geo-localization techniques Location Listener and

More information

Introduction To Android

Introduction To Android Introduction To Android Mobile Technologies Symbian OS ios BlackBerry OS Windows Android Introduction to Android Android is an operating system for mobile devices such as smart phones and tablet computers.

More information

6.858 Quiz 2 Review. Android Security. Haogang Chen Nov 24, 2014

6.858 Quiz 2 Review. Android Security. Haogang Chen Nov 24, 2014 6.858 Quiz 2 Review Android Security Haogang Chen Nov 24, 2014 1 Security layers Layer Role Reference Monitor Mandatory Access Control (MAC) for RPC: enforce access control policy for shared resources

More information

DEPARTMENT OF COMPUTER SCIENCE AND ENGINEERING QUESTION BANK M.E III SEM CSE MOBILE APPLICATION DEVELOPMENT UNIT -I INTRODUCTION

DEPARTMENT OF COMPUTER SCIENCE AND ENGINEERING QUESTION BANK M.E III SEM CSE MOBILE APPLICATION DEVELOPMENT UNIT -I INTRODUCTION DEPARTMENT OF COMPUTER SCIENCE AND ENGINEERING QUESTION BANK M.E III SEM CSE NE7011 MOBILE APPLICATION DEVELOPMENT UNIT -I INTRODUCTION Part A (2 marks) 1. Define Mobile Application? 2. List the uses of

More information

Security Philosophy. Humans have difficulty understanding risk

Security Philosophy. Humans have difficulty understanding risk Android Security Security Philosophy Humans have difficulty understanding risk Safer to assume that Most developers do not understand security Most users do not understand security Security philosophy

More information

Lecture 2 Android SDK

Lecture 2 Android SDK Lecture 2 Android SDK This work is licensed under the Creative Commons Attribution 4.0 International License. To view a copy of this license, visit http://creativecommons.org/licenses/by/4.0/ or send a

More information

Mobile Image Processing

Mobile Image Processing Mobile Image Processing Part 1: Introduction to mobile image processing on Android" Part 2: Real-time augmentation of viewfinder frames" Part 3: Utilizing optimized functions in the OpenCV library" Digital

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

SAAdobeAIRSDK Documentation

SAAdobeAIRSDK Documentation SAAdobeAIRSDK Documentation Release 3.1.6 Gabriel Coman April 12, 2016 Contents 1 Getting started 3 1.1 Creating Apps.............................................. 3 1.2 Adding Placements............................................

More information

Configuring the Android Manifest File

Configuring the Android Manifest File Configuring the Android Manifest File Author : userone What You ll Learn in This Hour:. Exploring the Android manifest file. Configuring basic application settings. Defining activities. Managing application

More information