SlideShare uma empresa Scribd logo
1 de 19
Having fun
with Location
Antoon Uijtdehaag
The Location Platform for Apps
How accurate is Android GPS


Cached GPS



Cached Network



Real-time GPS



Real-time Network

locationManager.getLastKnownLocation(LocationManager.GPS_PROVIDER);

locationManager.getLastKnownLocation(LocationManager.NETWORK_PROVIDER);

locationManager.requestLocationUpdates(LocationManager.GPS_PROVIDER,time,distance,
listener);

locationManager.requestLocationUpdates(LocationManager.NETWORK_PROVIDER,time,dist
ance,listener);

 Passive

<receiver android:name=".PassiveLocationChangedReceiver" android:enabled="true"/>

 NMEA

addNmeaListener(GpsStatus.NmeaListener);
Flow for obtaining user location

Portions of this page are reproduced from work created and shared by the Android Open Source
Project and used according to terms described in theCreative Commons 2.5 Attribution License.
Real-time tracking


locationManager. isProviderEnabled(
LocationManager.GPS_PROVIDER )



locationManager.requestLocationUpdates(
LocationManager.GPS_PROVIDER,0,0,listener);

public void onLocationChanged(Location location) {
if(location.getAccuracy() < 100.0 && location.getSpeed() < 6.95){
//Do something
}
else{
//Continue listening for a more accurate location
}
}
Is a consumer smartphone
GPS good enough?
Accuracy
 Rooftop <= 10 meters (desired result)
 Street >10 meters and <= 100 meters (let user know
it’s close but not perfect. Good enough?)
 Neighborhood > 100 meters and <= 500 meters
(give visual feedback that accuracy is low)
 City > 500 meters and <= 2000 meters (ask user to
verify city name from a list)
 County > 2000 meters (prompt for manual location
input)
Android GPS
Testing Tool
By Andy Gup
www.andygup.net
Geotrigger:
An Invisible
Button
Geographical
messaging
The location

Problem

Battery

Drain
Use ArcGIS iPhone and Android SDKs
Geotrigger Components
• Condition

(area) Polygon

• Action

(message, callback URL, or
change tracking profile)

• Tags

(to group content)

- Example:
- Tags
- Can

Wikipedia article data

for Buildings, History

allow users to subscribe to a subset
of the data
Setting a Geotrigger for a date and time
Set the date
and time in
the dateFrom
and dateTo
fields.
Geotrigger Tracking Profiles
Adaptive mode
• Optimized

for Geotrigger™ events

• Will

use less power when farther away from
triggers and content

Rough mode
• Only

gathers approximate location data

• Good

for determining if a device is in a given
city or neighborhood

• The

most battery efficient
Data collected by one person in rough mode

Portions of this page are reproduced from work created by Aaron Parecki
Geotrigger Tracking Profiles
Real-time mode
• Sends accurate location as fast as
possible
• Least battery efficient
Logging
• Tracks location data in areas of low
connectivity
• Sends to the server later, or when a
connection re-occurs
Data collected by one person in
real-time mode
2.5 million points since 2008

Portions of this page are reproduced from work created by Aaron Parecki
Visual Geotrigger Editor
MapAttack.org
Hit The Streets!
Meet with a group of friends at the realworld location of your board, start the
game, and run for glory!

Mais conteúdo relacionado

Destaque

Ali Al bahlouli CV-last in linkedin
Ali Al bahlouli CV-last in linkedinAli Al bahlouli CV-last in linkedin
Ali Al bahlouli CV-last in linkedinAli Al bahlouli
 
ликовно за сите теми за 5 одд print
ликовно за сите теми за 5 одд printликовно за сите теми за 5 одд print
ликовно за сите теми за 5 одд printIsabelle Parker
 
Maths for y9 progression evening 2013
Maths for y9 progression evening 2013Maths for y9 progression evening 2013
Maths for y9 progression evening 2013jodiel91
 
42442603 kuharica-kolaci
42442603 kuharica-kolaci42442603 kuharica-kolaci
42442603 kuharica-kolaciIsabelle Parker
 
Alapcae math activities 2014 ged test
Alapcae math activities 2014 ged testAlapcae math activities 2014 ged test
Alapcae math activities 2014 ged testdware655
 
20.01.2015 г. препознавање на буква а
20.01.2015 г. препознавање на буква а20.01.2015 г. препознавање на буква а
20.01.2015 г. препознавање на буква аIsabelle Parker
 
Math Matters --A Lot! ALAPCAE 2015
Math Matters --A Lot!  ALAPCAE 2015Math Matters --A Lot!  ALAPCAE 2015
Math Matters --A Lot! ALAPCAE 2015dware655
 
Eвидентни листови v-индивидуален-nivo
Eвидентни листови v-индивидуален-nivoEвидентни листови v-индивидуален-nivo
Eвидентни листови v-индивидуален-nivoIsabelle Parker
 
Infrastructure and aviation - Business environment
Infrastructure and aviation - Business environmentInfrastructure and aviation - Business environment
Infrastructure and aviation - Business environmentPrabhat Taneja
 
Keep our environment clean and green
Keep our environment clean and greenKeep our environment clean and green
Keep our environment clean and greenVijay Andriyas
 
Linear programming production strategy body plus 100, 200
Linear programming   production strategy body plus 100, 200Linear programming   production strategy body plus 100, 200
Linear programming production strategy body plus 100, 200Prabhat Taneja
 

Destaque (18)

Ali Al bahlouli CV-last in linkedin
Ali Al bahlouli CV-last in linkedinAli Al bahlouli CV-last in linkedin
Ali Al bahlouli CV-last in linkedin
 
ликовно за сите теми за 5 одд print
ликовно за сите теми за 5 одд printликовно за сите теми за 5 одд print
ликовно за сите теми за 5 одд print
 
Maths for y9 progression evening 2013
Maths for y9 progression evening 2013Maths for y9 progression evening 2013
Maths for y9 progression evening 2013
 
Attributes of The Christian Soldiers
Attributes of  The Christian SoldiersAttributes of  The Christian Soldiers
Attributes of The Christian Soldiers
 
What Does The LORD Require of You ?
What Does The LORD Require of You ?What Does The LORD Require of You ?
What Does The LORD Require of You ?
 
F.C.P
F.C.PF.C.P
F.C.P
 
How To Overcome Relapse
How To  Overcome RelapseHow To  Overcome Relapse
How To Overcome Relapse
 
42442603 kuharica-kolaci
42442603 kuharica-kolaci42442603 kuharica-kolaci
42442603 kuharica-kolaci
 
Interim budget 2014
Interim budget  2014Interim budget  2014
Interim budget 2014
 
Alapcae math activities 2014 ged test
Alapcae math activities 2014 ged testAlapcae math activities 2014 ged test
Alapcae math activities 2014 ged test
 
20.01.2015 г. препознавање на буква а
20.01.2015 г. препознавање на буква а20.01.2015 г. препознавање на буква а
20.01.2015 г. препознавање на буква а
 
Math Matters --A Lot! ALAPCAE 2015
Math Matters --A Lot!  ALAPCAE 2015Math Matters --A Lot!  ALAPCAE 2015
Math Matters --A Lot! ALAPCAE 2015
 
Eвидентни листови v-индивидуален-nivo
Eвидентни листови v-индивидуален-nivoEвидентни листови v-индивидуален-nivo
Eвидентни листови v-индивидуален-nivo
 
Infrastructure and aviation - Business environment
Infrastructure and aviation - Business environmentInfrastructure and aviation - Business environment
Infrastructure and aviation - Business environment
 
God's Principles for Christian Living
God's Principles for Christian LivingGod's Principles for Christian Living
God's Principles for Christian Living
 
50446170 torte
50446170 torte50446170 torte
50446170 torte
 
Keep our environment clean and green
Keep our environment clean and greenKeep our environment clean and green
Keep our environment clean and green
 
Linear programming production strategy body plus 100, 200
Linear programming   production strategy body plus 100, 200Linear programming   production strategy body plus 100, 200
Linear programming production strategy body plus 100, 200
 

Semelhante a Having fun with Location

Esri DevSummit 2013 Speed Geeking: Intro to Esri Geotrigger Service for ArcGIS
Esri DevSummit 2013 Speed Geeking: Intro to Esri Geotrigger Service for ArcGISEsri DevSummit 2013 Speed Geeking: Intro to Esri Geotrigger Service for ArcGIS
Esri DevSummit 2013 Speed Geeking: Intro to Esri Geotrigger Service for ArcGISAaron Parecki
 
Deep Dive into the ArcGIS Geotrigger Service - Esri DevSummit Dubai 2013
Deep Dive into the ArcGIS Geotrigger Service - Esri DevSummit Dubai 2013Deep Dive into the ArcGIS Geotrigger Service - Esri DevSummit Dubai 2013
Deep Dive into the ArcGIS Geotrigger Service - Esri DevSummit Dubai 2013Aaron Parecki
 
Developing Windows Phone Apps with Maps and Location Services
Developing Windows Phone Apps with Maps and Location ServicesDeveloping Windows Phone Apps with Maps and Location Services
Developing Windows Phone Apps with Maps and Location ServicesNick Landry
 
Intro to the ArcGIS Geotrigger Service
Intro to the ArcGIS Geotrigger ServiceIntro to the ArcGIS Geotrigger Service
Intro to the ArcGIS Geotrigger ServiceAaron Parecki
 
How To Analyze Geolocation Data with Hive and Hadoop
How To Analyze Geolocation Data with Hive and HadoopHow To Analyze Geolocation Data with Hive and Hadoop
How To Analyze Geolocation Data with Hive and HadoopHortonworks
 
Location-Based Services on Android
Location-Based Services on AndroidLocation-Based Services on Android
Location-Based Services on AndroidJomar Tigcal
 
GeoMesa on Apache Spark SQL with Anthony Fox
GeoMesa on Apache Spark SQL with Anthony FoxGeoMesa on Apache Spark SQL with Anthony Fox
GeoMesa on Apache Spark SQL with Anthony FoxDatabricks
 
오픈소스GIS를 활용한 서버기반 공간분석과 시각화
오픈소스GIS를 활용한 서버기반 공간분석과 시각화오픈소스GIS를 활용한 서버기반 공간분석과 시각화
오픈소스GIS를 활용한 서버기반 공간분석과 시각화MinPa Lee
 
How to use geolocation in react native apps
How to use geolocation in react native appsHow to use geolocation in react native apps
How to use geolocation in react native appsInnovationM
 
Location Analytics - Real-Time Geofencing using Kafka
Location Analytics - Real-Time Geofencing using Kafka Location Analytics - Real-Time Geofencing using Kafka
Location Analytics - Real-Time Geofencing using Kafka Guido Schmutz
 
Android App Development 04 : Location API
Android App Development 04 : Location APIAndroid App Development 04 : Location API
Android App Development 04 : Location APIAnuchit Chalothorn
 
Dynamic google-remote-data-collection-docx
Dynamic google-remote-data-collection-docxDynamic google-remote-data-collection-docx
Dynamic google-remote-data-collection-docxshanofa sanu
 
Building Real-Time Applications with Android and WebSockets
Building Real-Time Applications with Android and WebSocketsBuilding Real-Time Applications with Android and WebSockets
Building Real-Time Applications with Android and WebSocketsSergi Almar i Graupera
 
MapStore Create, save and share maps and mashups @ GRASS-GFOSS 2013
MapStore Create, save and share maps and mashups @ GRASS-GFOSS 2013MapStore Create, save and share maps and mashups @ GRASS-GFOSS 2013
MapStore Create, save and share maps and mashups @ GRASS-GFOSS 2013GeoSolutions
 
Building mobile apps with the ArcGIS api for Javascript, Esri, Andy Gup and A...
Building mobile apps with the ArcGIS api for Javascript, Esri, Andy Gup and A...Building mobile apps with the ArcGIS api for Javascript, Esri, Andy Gup and A...
Building mobile apps with the ArcGIS api for Javascript, Esri, Andy Gup and A...Esri Nederland
 
Mobile Application Development-Lecture 15 & 16.pdf
Mobile Application Development-Lecture 15 & 16.pdfMobile Application Development-Lecture 15 & 16.pdf
Mobile Application Development-Lecture 15 & 16.pdfAbdullahMunir32
 

Semelhante a Having fun with Location (20)

Esri DevSummit 2013 Speed Geeking: Intro to Esri Geotrigger Service for ArcGIS
Esri DevSummit 2013 Speed Geeking: Intro to Esri Geotrigger Service for ArcGISEsri DevSummit 2013 Speed Geeking: Intro to Esri Geotrigger Service for ArcGIS
Esri DevSummit 2013 Speed Geeking: Intro to Esri Geotrigger Service for ArcGIS
 
Deep Dive into the ArcGIS Geotrigger Service - Esri DevSummit Dubai 2013
Deep Dive into the ArcGIS Geotrigger Service - Esri DevSummit Dubai 2013Deep Dive into the ArcGIS Geotrigger Service - Esri DevSummit Dubai 2013
Deep Dive into the ArcGIS Geotrigger Service - Esri DevSummit Dubai 2013
 
Developing Windows Phone Apps with Maps and Location Services
Developing Windows Phone Apps with Maps and Location ServicesDeveloping Windows Phone Apps with Maps and Location Services
Developing Windows Phone Apps with Maps and Location Services
 
Intro to the ArcGIS Geotrigger Service
Intro to the ArcGIS Geotrigger ServiceIntro to the ArcGIS Geotrigger Service
Intro to the ArcGIS Geotrigger Service
 
Core Location in iOS
Core Location in iOSCore Location in iOS
Core Location in iOS
 
How To Analyze Geolocation Data with Hive and Hadoop
How To Analyze Geolocation Data with Hive and HadoopHow To Analyze Geolocation Data with Hive and Hadoop
How To Analyze Geolocation Data with Hive and Hadoop
 
Location-Based Services on Android
Location-Based Services on AndroidLocation-Based Services on Android
Location-Based Services on Android
 
GeoMesa on Apache Spark SQL with Anthony Fox
GeoMesa on Apache Spark SQL with Anthony FoxGeoMesa on Apache Spark SQL with Anthony Fox
GeoMesa on Apache Spark SQL with Anthony Fox
 
오픈소스GIS를 활용한 서버기반 공간분석과 시각화
오픈소스GIS를 활용한 서버기반 공간분석과 시각화오픈소스GIS를 활용한 서버기반 공간분석과 시각화
오픈소스GIS를 활용한 서버기반 공간분석과 시각화
 
How to use geolocation in react native apps
How to use geolocation in react native appsHow to use geolocation in react native apps
How to use geolocation in react native apps
 
Location Analytics - Real-Time Geofencing using Kafka
Location Analytics - Real-Time Geofencing using Kafka Location Analytics - Real-Time Geofencing using Kafka
Location Analytics - Real-Time Geofencing using Kafka
 
Android App Development 04 : Location API
Android App Development 04 : Location APIAndroid App Development 04 : Location API
Android App Development 04 : Location API
 
Dynamic google-remote-data-collection-docx
Dynamic google-remote-data-collection-docxDynamic google-remote-data-collection-docx
Dynamic google-remote-data-collection-docx
 
Geolocation and Mapping
Geolocation and MappingGeolocation and Mapping
Geolocation and Mapping
 
Building Real-Time Applications with Android and WebSockets
Building Real-Time Applications with Android and WebSocketsBuilding Real-Time Applications with Android and WebSockets
Building Real-Time Applications with Android and WebSockets
 
MapStore Create, save and share maps and mashups @ GRASS-GFOSS 2013
MapStore Create, save and share maps and mashups @ GRASS-GFOSS 2013MapStore Create, save and share maps and mashups @ GRASS-GFOSS 2013
MapStore Create, save and share maps and mashups @ GRASS-GFOSS 2013
 
GeoMesa on Spark SQL: Extracting Location Intelligence from Data
GeoMesa on Spark SQL: Extracting Location Intelligence from DataGeoMesa on Spark SQL: Extracting Location Intelligence from Data
GeoMesa on Spark SQL: Extracting Location Intelligence from Data
 
Building mobile apps with the ArcGIS api for Javascript, Esri, Andy Gup and A...
Building mobile apps with the ArcGIS api for Javascript, Esri, Andy Gup and A...Building mobile apps with the ArcGIS api for Javascript, Esri, Andy Gup and A...
Building mobile apps with the ArcGIS api for Javascript, Esri, Andy Gup and A...
 
Mobile Application Development-Lecture 15 & 16.pdf
Mobile Application Development-Lecture 15 & 16.pdfMobile Application Development-Lecture 15 & 16.pdf
Mobile Application Development-Lecture 15 & 16.pdf
 
Week 4
Week 4Week 4
Week 4
 

Último

Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)wesley chun
 
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUnderstanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUK Journal
 
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024The Digital Insurer
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationRadu Cotescu
 
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024The Digital Insurer
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Miguel Araújo
 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoffsammart93
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...Martijn de Jong
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProduct Anonymous
 
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...apidays
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024The Digital Insurer
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Scriptwesley chun
 
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc
 
Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024The Digital Insurer
 
GenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdfGenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdflior mazor
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonAnna Loughnan Colquhoun
 
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsJoaquim Jorge
 
Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businesspanagenda
 
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, AdobeApidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobeapidays
 

Último (20)

Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)
 
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUnderstanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
 
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organization
 
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
 
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
 
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Script
 
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
 
Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024
 
GenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdfGenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdf
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt Robison
 
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and Myths
 
Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire business
 
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, AdobeApidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
 

Having fun with Location

  • 3. How accurate is Android GPS  Cached GPS  Cached Network  Real-time GPS  Real-time Network locationManager.getLastKnownLocation(LocationManager.GPS_PROVIDER); locationManager.getLastKnownLocation(LocationManager.NETWORK_PROVIDER); locationManager.requestLocationUpdates(LocationManager.GPS_PROVIDER,time,distance, listener); locationManager.requestLocationUpdates(LocationManager.NETWORK_PROVIDER,time,dist ance,listener);  Passive <receiver android:name=".PassiveLocationChangedReceiver" android:enabled="true"/>  NMEA addNmeaListener(GpsStatus.NmeaListener);
  • 4. Flow for obtaining user location Portions of this page are reproduced from work created and shared by the Android Open Source Project and used according to terms described in theCreative Commons 2.5 Attribution License.
  • 5. Real-time tracking  locationManager. isProviderEnabled( LocationManager.GPS_PROVIDER )  locationManager.requestLocationUpdates( LocationManager.GPS_PROVIDER,0,0,listener); public void onLocationChanged(Location location) { if(location.getAccuracy() < 100.0 && location.getSpeed() < 6.95){ //Do something } else{ //Continue listening for a more accurate location } }
  • 6. Is a consumer smartphone GPS good enough? Accuracy  Rooftop <= 10 meters (desired result)  Street >10 meters and <= 100 meters (let user know it’s close but not perfect. Good enough?)  Neighborhood > 100 meters and <= 500 meters (give visual feedback that accuracy is low)  City > 500 meters and <= 2000 meters (ask user to verify city name from a list)  County > 2000 meters (prompt for manual location input)
  • 7. Android GPS Testing Tool By Andy Gup www.andygup.net
  • 10.
  • 11. Use ArcGIS iPhone and Android SDKs
  • 12. Geotrigger Components • Condition (area) Polygon • Action (message, callback URL, or change tracking profile) • Tags (to group content) - Example: - Tags - Can Wikipedia article data for Buildings, History allow users to subscribe to a subset of the data
  • 13. Setting a Geotrigger for a date and time Set the date and time in the dateFrom and dateTo fields.
  • 14. Geotrigger Tracking Profiles Adaptive mode • Optimized for Geotrigger™ events • Will use less power when farther away from triggers and content Rough mode • Only gathers approximate location data • Good for determining if a device is in a given city or neighborhood • The most battery efficient
  • 15. Data collected by one person in rough mode Portions of this page are reproduced from work created by Aaron Parecki
  • 16. Geotrigger Tracking Profiles Real-time mode • Sends accurate location as fast as possible • Least battery efficient Logging • Tracks location data in areas of low connectivity • Sends to the server later, or when a connection re-occurs
  • 17. Data collected by one person in real-time mode 2.5 million points since 2008 Portions of this page are reproduced from work created by Aaron Parecki
  • 19. MapAttack.org Hit The Streets! Meet with a group of friends at the realworld location of your board, start the game, and run for glory!

Notas do Editor

  1. https://developers.arcgis.comhttps://developers.arcgis.com/en/android/guide/geocoding-and-place-search.htmFeatureshttps://developers.arcgis.com/en/features/Free Sign Uphttps://developers.arcgis.com/en/plans/Develop Freehttps://developers.arcgis.com/en/android/
  2. http://www.andygup.net/how-accurate-is-android-gps-part-1-understanding-location-data/
  3. http://developer.android.com/guide/topics/location/strategies.html#BestEstimateStart application.Sometime later, start listening for updates from desired location providers.Maintain a &quot;current best estimate&quot; of location by filtering out new, but less accurate fixes.Stop listening for location updates.Take advantage of the last best location estimate.
  4. http://stackoverflow.com/questions/843675/how-do-i-find-out-if-the-gps-of-an-android-device-is-enabledhttp://www.andygup.net/how-accurate-is-android-gps-part-2-consuming-real-time-locations/Start application using minTime = 0 and minDistance = 0. Use an aggressive setting to get accurate location as quickly as possible.Once accuracy is less than 50 meters and speed less than 45 mph set minTime = 5000 and minDistance = 25.Speed equals 0 for greater than 1 hour. Shut off location listeners and notify user.Battery gets low. Shut off location listeners and notify user.Rooftop  &lt;= 10 meters (desired result)Street &gt;10 meters and &lt;= 100 meters (let user know it’s close but not perfect. Good enough?)Neighborhood &gt; 100 meters and  &lt;= 500 meters (give visual feedback that accuracy is low)City &gt; 500 meters and &lt;= 2000 meters (ask user to verify city name from a list)County &gt; 2000 meters (prompt for manual location input)finalLocationManager manager = (LocationManager) getSystemService( Context.LOCATION_SERVICE ); if ( !manager.isProviderEnabled( LocationManager.GPS_PROVIDER ) ) { buildAlertMessageNoGps(); } private voidbuildAlertMessageNoGps() { finalAlertDialog.Builder builder = new AlertDialog.Builder(this); builder.setMessage(&quot;Your GPS seemstobedisabled, do you want toenableit?&quot;) .setCancelable(false) .setPositiveButton(&quot;Yes&quot;, new DialogInterface.OnClickListener() { public voidonClick(@SuppressWarnings(&quot;unused&quot;) finalDialogInterfacedialog, @SuppressWarnings(&quot;unused&quot;) final int id) { startActivity(new Intent(android.provider.Settings.ACTION_LOCATION_SOURCE_SETTINGS)); } }) .setNegativeButton(&quot;No&quot;, new DialogInterface.OnClickListener() { public voidonClick(finalDialogInterfacedialog, @SuppressWarnings(&quot;unused&quot;) final int id) { dialog.cancel(); } }); finalAlertDialog alert = builder.create(); alert.show(); }
  5. http://www.andygup.net/android-gps-testing-tool/
  6. https://developers.arcgis.com/en/geotrigger-service/Triggers when entering or leaving.http://coolmaps.esri.com/starbucks/Use CasesRetail and LoyaltyEngage loyal customers with personalized content and deals the moment they enter your store.Real EstateSend messages to prospective home buyers when their search criteria matches a home nearby.Energy ManagementUse your location to automatically manage power consumption in your home or office.TourismBring public attractions to life by informing tourists of interesting locations as they explore your city.Public AlertsNotify citizens about events such as road closures or civic emergencies based on past locations.Personalized OffersSend customized, individual offers to potential customers as they pass by your establishment.Data CollectionGroup related content with tagsLocation Checkpoint VerificationCreate triggers to represent each location. App monitors the location and records a point whenever client is at the location
  7. There’s great tech out there for dedicated GPS devices and real-time tech for devices running intensive GPS for short periods, In the ordinary world – everyone wants to be location-aware, but battery drain has been an issue. Consumer devices – the devices in your pockets vs. a dedicated GPS device. I thinkeveryone in this room has troublewith GPS being a totalbatteryhog. For on the go situations, we need a solution that prevents battery-drain while still providing location-based alerts and tracking. This is consumer-grade, ready for millions of devices. Holding back the market for consumer devices to get on using GPS.
  8. Example of GeoJSON format. Can add date and time conditions.
  9. http://aaronparecki.com/
  10. http://mapattack.org/