Since the rise of the smartphone location tracking has become ubiquitous and is an increasingly controversial and misunderstood technology. This talk discusses the latest approaches in location tracking across the major mobile platforms.
Building a General PDE Solving Framework with Symbolic-Numeric Scientific Mac...
(Enemy of the) State of Mobile Location Tracking
1. R I C H A R D K E E N
(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
Sensor Accuracy Speed
Power
consumption
Caveats
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
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. T R A C K I N G C H A L L E N G E S
• 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
- I M P R O V I N G P O W E R C O N S U M P T I O N
• 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
- I M P R O V I N G P O W E R C O N S U M P T I O N
iOS desiredAccuracy Power usage Highest power sensor
kCLLocationAccuracyBestForNavigation High GPS+
kCLLocationAccuracyBest High GPS
kCLLocationAccuracyNearestTenMeters High GPS
kCLLocationAccuracyHundredMeters
Medium (urban)
High (rural)
WiFi (urban)
GPS (rural)
kCLLocationAccuracyKilometer Low Cell
kCLLocationAccuracyThreeKilometers Low Cell
16. Android priorities Accuracy Power usage
Highest power sensor
used
PRIORITY_HIGH_ACCURACY Building-level High GPS
PRIORITY_BALANCED_POWER
_ACCURACY Block-level Medium WiFi
PRIORITY_LOW_POWER City-level Low Cell
PRIORITY_NO_POWER Varies None Varies
S TA N D A R D L O C AT I O N S E R V I C E S
- I M P R O V I N G P O W E R C O N S U M P T I O N
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. G E O F E N C E S
• 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)
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. A N A S I D E : A P P L E M 7 & S I M I L A R
• 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. T O O L S
• 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. B L U E T O O T H B E A C O N S
• “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. T H A N K S !
@richardkeen
richard.keen@gmail.com
iOS reference: http://bit.ly/19O9PZS
Android reference: http://bit.ly/18mMnSX
Windows Phone reference: http://bit.ly/1aJu6y8