SlideShare a Scribd company logo
1 of 33
Download to read offline
RICHARD KEEN

(Enemy of the) State of
Mobile Location Tracking
20,000 points over 232 days
15,000 miles travelled
at an average of 2.6 mph
M E T H O D S O F L O C AT I O N T R A C K I N G

• On-device sensors (GPS etc.)
• Network provider tracking
• Indoor Wi-Fi scanning
• “Smart” rubbish bins…
W H Y T R A C K D E V I C E L O C AT I O N
• Safety & security
• Logistics
• Friend finders
• Fitness
• Journaling/quantified self
• Anticipatory computing
H O W I S A L O C AT I O N D E T E R M I N E D

Accuracy

Speed

Power
consumption

GPS

~40m

Slow
(3 seconds+)

High

Rarely works
indoors

WiFi triangulation

~70m

Fast

Medium

Rarely works in
rural areas

Cell triangulation
Cell ID

200m-1km

Fast

Low

Sensor

Caveats
R E Q U E S T I N G A S I N G L E L O C AT I O N

• Even single location updates come as an

asynchronous stream – not a single final value

• Initial location is often cached and stale
• The user may be moving around as you request their

location!
A N AT O M Y O F A L O C AT I O N
• latitude
• longitude
• altitude
• accuracy (horizontal and vertical)
• speed
• bearing
• timestamp
TRACKING CHALLENGES
• Power consumption
• Multitasking/background processing support
• Privacy settings (global & per-app)
• Device reboots
• Airplane mode, Wi-Fi disabled, cellular disabled
• Testing
S TA N D A R D L O C AT I O N S E R V I C E S
• Delivers a constant stream of locations over time
• Supports background multitasking (limited on

Windows Phone)

• Power hungry with default settings
• Tracking won’t survive device reboots*
• Consider power impact of your callback code as well
S TA N D A R D L O C AT I O N S E R V I C E S
- IMPROVING POWER CONSUMPTION
• On iOS & Windows Phone, manage power usage

through location manager settings:
• desired accuracy level

• distance or time threshold between notifications –

 helps to reduce processing overhead

• iPhone 5+ & Google Nexus 5 support deferred

updates & sensor batching
S TA N D A R D L O C AT I O N S E R V I C E S
- IMPROVING POWER CONSUMPTION
iOS desiredAccuracy

Power usage

Highest power sensor

kCLLocationAccuracyBestForNavigation

High

GPS+

kCLLocationAccuracyBest

High

GPS

kCLLocationAccuracyNearestTenMeters

High

GPS

Medium (urban)
High (rural)

WiFi (urban)
GPS (rural)

kCLLocationAccuracyKilometer

Low

Cell

kCLLocationAccuracyThreeKilometers

Low

Cell

kCLLocationAccuracyHundredMeters
S TA N D A R D L O C AT I O N S E R V I C E S
- IMPROVING POWER CONSUMPTION
Accuracy

Power usage

Highest power sensor
used

Building-level

High

GPS

Block-level

Medium

WiFi

PRIORITY_LOW_POWER

City-level

Low

Cell

PRIORITY_NO_POWER

Varies

None

Varies

Android priorities

PRIORITY_HIGH_ACCURACY

PRIORITY_BALANCED_POWER	
  
_ACCURACY
S I G N I F I C A N T C H A N G E N O T I F I C AT I O N S
• Only available on iOS
• Low power overhead, relies on cell tower transitions
• On average notification triggered after a movement of

around 500m and more than 5 minutes

• Survives reboots of the device
• Very useful in hybrid strategies
GEOFENCES
!

• Geofence is a region defined by a co-ordinate and

radius (in this context)

• Can request background notification of entry or exit of

the region (& dwelling on Android)
A

B
EXIT A
ENTER B
G E O F E N C E L I M I TAT I O N S

• Often quite a lag, doesn’t always trigger
• Not available on Windows Phone
• iOS supports up to 20 per app, Android up to 100
• Survives reboots on iOS, not on Android
H Y B R I D S T R AT E G I E S

Your app will have unique tracking needs; the default
strategies are rarely the most appropriate
!

Find the ideal balance of quality, power use, granularity
and frequency for your app
AN ASIDE: APPLE M7 & SIMILAR
• iPhone 5S shipped with Apple M7 “motion co-

processor”

• Does not relate to location data
• Google Nexus 5 and Moto X ship with “hardware

sensor batching” – equivalent functionality

• Currently provides step counting & activity detection
TOOLS

• Profiling tools allow you to monitor use of GPS over

time

• For iOS use Instruments, untethered capture

supported via iPhone settings

• For Android use Qualcomm Trepn plugin for Eclipse
BLUETOOTH BEACONS

• “iBeacon” – Apple specification for Bluetooth 4

location beacons

• Indoor high-accuracy location triggers
• Indoor positioning
• Opt-in via install of app tied to iBeacon namespace
THANKS!
@richardkeen
richard.keen@gmail.com

iOS reference: http://bit.ly/19O9PZS
Android reference: http://bit.ly/18mMnSX
Windows Phone reference: http://bit.ly/1aJu6y8

More Related Content

What's hot

Privacy Policies Change Management for Smartphones
Privacy Policies Change Management for SmartphonesPrivacy Policies Change Management for Smartphones
Privacy Policies Change Management for Smartphones
Debmalya Biswas
 
HCI: Internet-Enabled TV Remote Control
HCI: Internet-Enabled TV Remote ControlHCI: Internet-Enabled TV Remote Control
HCI: Internet-Enabled TV Remote Control
odlozano
 

What's hot (17)

Air quality monitor as510
Air quality monitor   as510Air quality monitor   as510
Air quality monitor as510
 
Privacy Policies Change Management for Smartphones
Privacy Policies Change Management for SmartphonesPrivacy Policies Change Management for Smartphones
Privacy Policies Change Management for Smartphones
 
SMARTHOME
SMARTHOMESMARTHOME
SMARTHOME
 
Spock Glove: Nasa Space Apps Challenge Pitch
Spock Glove: Nasa Space Apps Challenge PitchSpock Glove: Nasa Space Apps Challenge Pitch
Spock Glove: Nasa Space Apps Challenge Pitch
 
Light-Up Skateboard
Light-Up SkateboardLight-Up Skateboard
Light-Up Skateboard
 
GloPos Positioning Technology
GloPos Positioning TechnologyGloPos Positioning Technology
GloPos Positioning Technology
 
"Achieving High-Performance Vision Processing for Embedded Applications with ...
"Achieving High-Performance Vision Processing for Embedded Applications with ..."Achieving High-Performance Vision Processing for Embedded Applications with ...
"Achieving High-Performance Vision Processing for Embedded Applications with ...
 
Track 4 session 8 - st dev con 2016 - time of flight
Track 4   session 8 - st dev con 2016 - time of flightTrack 4   session 8 - st dev con 2016 - time of flight
Track 4 session 8 - st dev con 2016 - time of flight
 
HCI: Internet-Enabled TV Remote Control
HCI: Internet-Enabled TV Remote ControlHCI: Internet-Enabled TV Remote Control
HCI: Internet-Enabled TV Remote Control
 
Robotic 11-26-14
Robotic 11-26-14Robotic 11-26-14
Robotic 11-26-14
 
NEAR FIELD COMMUNICATION
NEAR FIELD COMMUNICATIONNEAR FIELD COMMUNICATION
NEAR FIELD COMMUNICATION
 
Smart control v3
Smart control v3Smart control v3
Smart control v3
 
Smartphones and Earthquakes - A System Design Presentation
Smartphones and Earthquakes - A System Design PresentationSmartphones and Earthquakes - A System Design Presentation
Smartphones and Earthquakes - A System Design Presentation
 
SOLDIER’S E - JACKET
SOLDIER’S E - JACKETSOLDIER’S E - JACKET
SOLDIER’S E - JACKET
 
Programmable Remotely Time Controlled
Programmable Remotely Time ControlledProgrammable Remotely Time Controlled
Programmable Remotely Time Controlled
 
#20 SUSB Expo 2014 The Art and Science of Unmanned Systems
#20 SUSB Expo 2014 The Art and Science of Unmanned Systems#20 SUSB Expo 2014 The Art and Science of Unmanned Systems
#20 SUSB Expo 2014 The Art and Science of Unmanned Systems
 
Why do we all need to use CheckFox and what’s so Sigfox special about it?
Why do we all need to use CheckFox and what’s so Sigfox special about it?Why do we all need to use CheckFox and what’s so Sigfox special about it?
Why do we all need to use CheckFox and what’s so Sigfox special about it?
 

Similar to (Enemy of the) State of Mobile Location Tracking

Indoor navigation system
Indoor navigation systemIndoor navigation system
Indoor navigation system
Omkar Paranjape
 

Similar to (Enemy of the) State of Mobile Location Tracking (20)

ハイブリッドLoRa-BLEモジュールとTTN対応キャリアグレードLoRaWANゲートウェイの紹介
ハイブリッドLoRa-BLEモジュールとTTN対応キャリアグレードLoRaWANゲートウェイの紹介ハイブリッドLoRa-BLEモジュールとTTN対応キャリアグレードLoRaWANゲートウェイの紹介
ハイブリッドLoRa-BLEモジュールとTTN対応キャリアグレードLoRaWANゲートウェイの紹介
 
Internal and external positioning in mobile and web applications
Internal and external positioning in mobile and web applicationsInternal and external positioning in mobile and web applications
Internal and external positioning in mobile and web applications
 
Sensor's inside
Sensor's insideSensor's inside
Sensor's inside
 
High-Accuracy GPS for GIS: From 1ft to 4in.
High-Accuracy GPS for GIS: From 1ft to 4in.High-Accuracy GPS for GIS: From 1ft to 4in.
High-Accuracy GPS for GIS: From 1ft to 4in.
 
Internet of Things (IoT): Micro-location and Smart Buildings
Internet of Things (IoT): Micro-location and Smart BuildingsInternet of Things (IoT): Micro-location and Smart Buildings
Internet of Things (IoT): Micro-location and Smart Buildings
 
Indoor Navigation
Indoor NavigationIndoor Navigation
Indoor Navigation
 
Raw GNSS Measurements under Android : Data Quality Analysis
Raw GNSS Measurements under Android : Data Quality AnalysisRaw GNSS Measurements under Android : Data Quality Analysis
Raw GNSS Measurements under Android : Data Quality Analysis
 
Leica GG04 and ZRover
Leica GG04 and ZRoverLeica GG04 and ZRover
Leica GG04 and ZRover
 
Short primer on tracking organs for transplants by tom starr march 8, 2011
Short primer on tracking organs for transplants by tom starr march 8, 2011Short primer on tracking organs for transplants by tom starr march 8, 2011
Short primer on tracking organs for transplants by tom starr march 8, 2011
 
Indoor navigation system
Indoor navigation systemIndoor navigation system
Indoor navigation system
 
RSS and Sensor Fusion Algorithms for Indoor Location Systems on Smartphones
RSS and Sensor Fusion Algorithms for Indoor Location Systems on SmartphonesRSS and Sensor Fusion Algorithms for Indoor Location Systems on Smartphones
RSS and Sensor Fusion Algorithms for Indoor Location Systems on Smartphones
 
Near field communication
Near field communicationNear field communication
Near field communication
 
ARDUINO BASED HAND GESTURE CONTROL OF COMPUTER (3).pptx
ARDUINO BASED HAND GESTURE CONTROL OF COMPUTER (3).pptxARDUINO BASED HAND GESTURE CONTROL OF COMPUTER (3).pptx
ARDUINO BASED HAND GESTURE CONTROL OF COMPUTER (3).pptx
 
PLNOG15: Find the location of your superhero with 802.11 - Sebastian Pasternacki
PLNOG15: Find the location of your superhero with 802.11 - Sebastian PasternackiPLNOG15: Find the location of your superhero with 802.11 - Sebastian Pasternacki
PLNOG15: Find the location of your superhero with 802.11 - Sebastian Pasternacki
 
Insite deck
Insite deckInsite deck
Insite deck
 
Real-time, Sensor-based Monitoring of Shipping Containers
Real-time, Sensor-based Monitoring of Shipping ContainersReal-time, Sensor-based Monitoring of Shipping Containers
Real-time, Sensor-based Monitoring of Shipping Containers
 
Sun SPOTs by Ritter
Sun SPOTs by RitterSun SPOTs by Ritter
Sun SPOTs by Ritter
 
Sniffer ppt
Sniffer pptSniffer ppt
Sniffer ppt
 
Mobile devices hardware characteristics
Mobile devices hardware characteristicsMobile devices hardware characteristics
Mobile devices hardware characteristics
 
Context-Awareness & Occupancy/Traffic Monitoring
Context-Awareness & Occupancy/Traffic MonitoringContext-Awareness & Occupancy/Traffic Monitoring
Context-Awareness & Occupancy/Traffic Monitoring
 

Recently uploaded

Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Victor Rentea
 
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Victor Rentea
 

Recently uploaded (20)

[BuildWithAI] Introduction to Gemini.pdf
[BuildWithAI] Introduction to Gemini.pdf[BuildWithAI] Introduction to Gemini.pdf
[BuildWithAI] Introduction to Gemini.pdf
 
Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...
Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...
Emergent Methods: Multi-lingual narrative tracking in the news - real-time ex...
 
Platformless Horizons for Digital Adaptability
Platformless Horizons for Digital AdaptabilityPlatformless Horizons for Digital Adaptability
Platformless Horizons for Digital Adaptability
 
CNIC Information System with Pakdata Cf In Pakistan
CNIC Information System with Pakdata Cf In PakistanCNIC Information System with Pakdata Cf In Pakistan
CNIC Information System with Pakdata Cf In Pakistan
 
ICT role in 21st century education and its challenges
ICT role in 21st century education and its challengesICT role in 21st century education and its challenges
ICT role in 21st century education and its challenges
 
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, ...
 
Artificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyArtificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : Uncertainty
 
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...
 
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
 
Corporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptxCorporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptx
 
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodPolkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
 
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingRepurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
 
MS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectorsMS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectors
 
FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024
 
AWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of Terraform
 
Exploring Multimodal Embeddings with Milvus
Exploring Multimodal Embeddings with MilvusExploring Multimodal Embeddings with Milvus
Exploring Multimodal Embeddings with Milvus
 
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
 
Six Myths about Ontologies: The Basics of Formal Ontology
Six Myths about Ontologies: The Basics of Formal OntologySix Myths about Ontologies: The Basics of Formal Ontology
Six Myths about Ontologies: The Basics of Formal Ontology
 
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
 
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
 

(Enemy of the) State of Mobile Location Tracking

  • 1. RICHARD KEEN (Enemy of the) State of Mobile Location Tracking
  • 2.
  • 3. 20,000 points over 232 days 15,000 miles travelled at an average of 2.6 mph
  • 4.
  • 5. M E T H O D S O F L O C AT I O N T R A C K I N G • On-device sensors (GPS etc.) • Network provider tracking • Indoor Wi-Fi scanning • “Smart” rubbish bins…
  • 6.
  • 7. W H Y T R A C K D E V I C E L O C AT I O N • Safety & security • Logistics • Friend finders • Fitness • Journaling/quantified self • Anticipatory computing
  • 8. H O W I S A L O C AT I O N D E T E R M I N E D Accuracy Speed Power consumption GPS ~40m Slow (3 seconds+) High Rarely works indoors WiFi triangulation ~70m Fast Medium Rarely works in rural areas Cell triangulation Cell ID 200m-1km Fast Low Sensor Caveats
  • 9. R E Q U E S T I N G A S I N G L E L O C AT I O N • Even single location updates come as an asynchronous stream – not a single final value • Initial location is often cached and stale • The user may be moving around as you request their location!
  • 10. A N AT O M Y O F A L O C AT I O N • latitude • longitude • altitude • accuracy (horizontal and vertical) • speed • bearing • timestamp
  • 11.
  • 12. TRACKING CHALLENGES • Power consumption • Multitasking/background processing support • Privacy settings (global & per-app) • Device reboots • Airplane mode, Wi-Fi disabled, cellular disabled • Testing
  • 13. S TA N D A R D L O C AT I O N S E R V I C E S • Delivers a constant stream of locations over time • Supports background multitasking (limited on Windows Phone) • Power hungry with default settings • Tracking won’t survive device reboots* • Consider power impact of your callback code as well
  • 14. S TA N D A R D L O C AT I O N S E R V I C E S - IMPROVING POWER CONSUMPTION • On iOS & Windows Phone, manage power usage through location manager settings: • desired accuracy level • distance or time threshold between notifications –  helps to reduce processing overhead • iPhone 5+ & Google Nexus 5 support deferred updates & sensor batching
  • 15. S TA N D A R D L O C AT I O N S E R V I C E S - IMPROVING POWER CONSUMPTION iOS desiredAccuracy Power usage Highest power sensor kCLLocationAccuracyBestForNavigation High GPS+ kCLLocationAccuracyBest High GPS kCLLocationAccuracyNearestTenMeters High GPS Medium (urban) High (rural) WiFi (urban) GPS (rural) kCLLocationAccuracyKilometer Low Cell kCLLocationAccuracyThreeKilometers Low Cell kCLLocationAccuracyHundredMeters
  • 16. S TA N D A R D L O C AT I O N S E R V I C E S - IMPROVING POWER CONSUMPTION Accuracy Power usage Highest power sensor used Building-level High GPS Block-level Medium WiFi PRIORITY_LOW_POWER City-level Low Cell PRIORITY_NO_POWER Varies None Varies Android priorities PRIORITY_HIGH_ACCURACY PRIORITY_BALANCED_POWER   _ACCURACY
  • 17.
  • 18. S I G N I F I C A N T C H A N G E N O T I F I C AT I O N S • Only available on iOS • Low power overhead, relies on cell tower transitions • On average notification triggered after a movement of around 500m and more than 5 minutes • Survives reboots of the device • Very useful in hybrid strategies
  • 19.
  • 20.
  • 21. GEOFENCES ! • Geofence is a region defined by a co-ordinate and radius (in this context) • Can request background notification of entry or exit of the region (& dwelling on Android)
  • 22. A B
  • 23.
  • 26. G E O F E N C E L I M I TAT I O N S • Often quite a lag, doesn’t always trigger • Not available on Windows Phone • iOS supports up to 20 per app, Android up to 100 • Survives reboots on iOS, not on Android
  • 27. H Y B R I D S T R AT E G I E S Your app will have unique tracking needs; the default strategies are rarely the most appropriate ! Find the ideal balance of quality, power use, granularity and frequency for your app
  • 28. AN ASIDE: APPLE M7 & SIMILAR • iPhone 5S shipped with Apple M7 “motion co- processor” • Does not relate to location data • Google Nexus 5 and Moto X ship with “hardware sensor batching” – equivalent functionality • Currently provides step counting & activity detection
  • 29. TOOLS • Profiling tools allow you to monitor use of GPS over time • For iOS use Instruments, untethered capture supported via iPhone settings • For Android use Qualcomm Trepn plugin for Eclipse
  • 30.
  • 31.
  • 32. BLUETOOTH BEACONS • “iBeacon” – Apple specification for Bluetooth 4 location beacons • Indoor high-accuracy location triggers • Indoor positioning • Opt-in via install of app tied to iBeacon namespace
  • 33. THANKS! @richardkeen richard.keen@gmail.com iOS reference: http://bit.ly/19O9PZS Android reference: http://bit.ly/18mMnSX Windows Phone reference: http://bit.ly/1aJu6y8