Android - Location Based Services. Google Play services facilitates adding location awareness to your app with automated location tracking Geo fencing.

Slides:



Advertisements
Similar presentations
Android Application Development A Tutorial Driven Course.
Advertisements

Location based services
Prepared by: Prepared by: Jameela Rabaya Jameela Rabaya Fatima Darawsha Fatima Darawsha.
Android Security. N-Degree of Separation Applications can be thought as composed by Main Functionality Several Non-functional Concerns Security is a non-functional.
Tracking & Login Data persistence User tracking.
Location & Maps.  Mobile applications can benefit from being location-aware, e.g.,  Routing from a current to a desired location  Searching for stores.
Android Application Development. Agenda  Android Business Model  Why Android  Android application market space  Market Segments & Target customers.
SMS. Short Message Service – Primarily text messages between mobile phones – First one sent December 3, 1982 “Merry Christmas” – In 2008 Approximately.
Location and Maps Content Getting Location Getting Google Map In application Test on Emulator/Device.
CS378 - Mobile Computing Location (Location, Location, Location)
CS378 - Mobile Computing Location.
Efficient Privilege De-Escalation for Ad Libraries in Mobile Apps Bin Liu (SRA), Bin Liu (CMU), Hongxia Jin (SRA), Ramesh Govindan (USC)
Route Tracker App Android How to Program © by Pearson Education, Inc. All Rights Reserved.
About me Yichuan Wang Android Basics Credit goes to Google and UMBC.
Google Maps Android API v2 吳俊興 國立高雄大學 資訊工程學系 CSF645 – Mobile Computing 行動計算
Location-Based API 1. 2 Location-Based Services or LBS allow software to obtain the phone's current location. This includes location obtained from the.
Authors: William Enck The Pennsylvania State University Peter Gilbert Duke University Byung-Gon Chun Intel Labs Landon P. Cox Duke University Jaeyeon Jung.
Location Services: Part 1 (Location and Geocoding)
Location based services Using Google Maps v2 etc. in Android apps 1Location based services.
Social network Twitter Hashtag: #m2eu #android Personal Israel Ferrer –
Location based services
My BikeMiles® Screen-by-Screen Process Flow & FAQs.
1 Mobile Computing Monetizing An App Copyright 2014 by Janson Industries.
Using Intents to Broadcast Events Intents Can be used to broadcast messages anonymously Between components via the sendBroadcast method As a result Broadcast.
CS378 - Mobile Computing Intents.
BusTracker: SmartPhone- based Mass Transit Tracking Steve Kopman 4/27/2011.
Android - Project Green basket Android Application * Let's you do your grocery shopping location based. * Let's you decide to go to the closest grocery.
Android for Java Developers Denver Java Users Group Jan 11, Mike
Downloading Lumi Show on Android Devices Through our technology, people gain insight, instantly.
Context Aware Location Nasrullah. Location Basics LocationManager—Class providing access to Android system location services LocationListener—Interface.
CS378 - Mobile Computing Intents. Allow us to use applications and components that are part of Android System – start activities – start services – deliver.
MAKANI ANDROID APPLICATION Prepared by: Asma’ Hamayel Alaa Shaheen.
 Facebook Integration on iOS Phan Thanh Phat Huynh Thanh Van.
GPS Provider:  GPS signal Network Location Provider:  Cell ID  Wi-Fi.
Location. GPS Global Positioning System – At least 4 satellites typically used 3 required extra for error detection and altitude typically accurate within.
Webview and Web services. Web Apps You can make your web content available to users in two ways in a traditional web browser in an Android application,
Location-Aware 吳俊興 國立高雄大學 資訊工程學系 CSF645 – Mobile Computing 行動計算
Operating Systems & Information Services CERN IT Department CH-1211 Geneva 23 Switzerland t OIS First look at the Mobile Framework Ivan Deloose,
FCM Workflow using GCM.
Introducing Intents Intents Bind application components and navigate between them Transform device into collection of interconnected systems Creating a.
Cosc 4735 Primer: Marshmallow Changes and new APIs in android 6.0 (api 23)
Sensors – Part 2 SE 395/595. Location in Android LocationManager class – Configure providers and their listeners LocationListener class – Handles update.
TODAY Android Studio Installation Getting started Creating your 1 st App Beginning to understanding Intents.
DEVOLOPING ANDROID APP ON LOCATION BASED REMINDER ON ANDROID MOBILE SYSTEMS.
Cosc 4735 LocationAware API. Previous on … Before we looked at GPS location. – d-gpslocation.pptx
Location Based Services. Android location APIs make it easy for you to build location-aware applications, without needing to focus on the details of the.
GSU Indoor Navigation Senior Project Fall Semester 2013 Michael W Tucker.
丁建文 國立高雄應用科大資管系副教授 兼任計網中心軟體發展組組長 跨平台行動應用軟體開發技術 : HTML5 & Mobile JavaScript Framework 暨南大學.
Lecture 5: Location Topics: Google Play Services, Location API Date: Feb 16, 2016.
Location based services 1. Some location-based services available in Android Geo-coding – Address -> location Reverse geo-coding – Location -> address(es)
The Ingredients of Android Applications. A simple application in a process In a classical programming environment, the OS would load the program code.
3 rd -party APIs Kalin Kadiev Astea Solutions AD.
CS378 - Mobile Computing Location (Location, Location, Location)
1. 2 Android location services Determining a device’s current location Tracking device movements Proximity alerts.
CS499 – Mobile Application Development Fall 2013 Location & Maps.
REDCap Mobile Application
Android Application -Architecture.
Mobile Applications (Android Programming)
Tracking device movements
Lecture 5: Location Topics: Google Play Services, Location API.
Android 17: Location Kirk Scott.
Sensors, maps and fragments:
The GoogleMap API By Cody Littley.
Mobile Device Development
Location (Location, Location, Location)
Application Development A Tutorial Driven Course
SharePoint Online Authentication Patterns
Lecture 5: Location Topics: Google Play Services, Location API.
CS378 - Mobile Computing Location and Maps.
Maps, Geocoding, and Location-Based Services.
Presentation transcript:

Android - Location Based Services

Google Play services facilitates adding location awareness to your app with automated location tracking Geo fencing activity recognition use Location Services in your APP to get the current location get periodic location updates look up addresses

Location Services Android gives your applications access to the location services supported by the device through classes in the android.location package. The central component of the location framework is the LocationManager system service, which provides APIs to determine location and bearing of the underlying device. As with other system services, you do not instantiate a LocationManager directly. Request an instance from the system by calling getSystemService(Context.LOCATION_SERVICE). The method returns a handle to a new LocationManager instance.

Once your application has a LocationManager, your application is able to do three things: Query for the list of all LocationProviders for the last known user location. Register/unregister for periodic updates of the user's current location from a location provider (specified either by criteria or name). Register/unregister for a given Intent to be fired if the device comes within a given proximity (specified by radius in meters) of a given lat/long.

Set Up Google Play Services Download and install the Google Play services component via the SDK Manager and add the library to your project. Specify App Permissions Apps that use location services must request location permissions.

Android offers two location permissions: ACCESS_COARSE_LOCATION and ACCESS_FINE_LOCATION. The permission you choose determines the accuracy of the location returned by the API. If you specify ACCESS_COARSE_LOCATION, the API returns a location with an accuracy approximately equivalent to a city block. Request this permission with the uses-permission element in your app manifest

Permission tag is used to enforce a user defined permission on a component of your application. Uses-permission tag is used to take a permission from the user for your application. Permission tag is used when you want other application to seek permission from the user to use some of your application components.

Challenges in Determining User Location Obtaining user location from a mobile device can be complicated. There are several reasons why a location reading (regardless of the source) can contain errors and be inaccurate. Some sources of error in the user location include: Multitude of location sources GPS, Cell-ID, and Wi-Fi can each provide a clue to users location. Determining which to use and trust is a matter of trade-offs in accuracy, speed, and battery-efficiency. User movement Because the user location changes, you must account for movement by re-estimating user location every so often. Varying accuracy Location estimates coming from each location source are not consistent in their accuracy. A location obtained 10 seconds ago from one source might be more accurate than the newest location from another or same source.

Flow for obtaining user location

The typical flow of procedures for obtaining the user location: Start application. Sometime later, start listening for updates from desired location providers. Maintain a "current best estimate" of location by filtering out new, but less accurate fixes. Stop listening for location updates. Take advantage of the last best location estimate.