Droidcon London 2010 - Create Killer Location Apps
by ahousley on Oct 29, 2010
- 1,232 views
My talk in the API / SDK track at Droidcon London 2010.
My talk in the API / SDK track at Droidcon London 2010.
Accessibility
Categories
Tags
More...Upload Details
Uploaded via SlideShare as Apple Keynote
Usage Rights
Statistics
- Favorites
- 6
- Downloads
- 0
- Comments
- 0
- Embed Views
- Views on SlideShare
- 1,035
- Total Views
- 1,232

Some already building location-centric apps.
Some have apps and trying to work out how to integrate location.
We living in the distant future... (according to Doc Brown) So let’s travel back in time to 1995 for some interactive trivia. I hope you’re awake!
FB Launched in 2004, so < 3 years to get achieve same growth as internet.
Network effect... next slide
Network effect much greater now - more connections, accelerated growth...
...building upon internet and social.
28.8% of world pop
28.8% of world pop
28.8% of world pop
Cell ID - Works well, quite accurate with triangulation
GPS - Long fix time, high accuracy, doesn’t work well in built-up areas....
Cell ID - Works well, quite accurate with triangulation
GPS - Long fix time, high accuracy, doesn’t work well in built-up areas....
At what point do you reload data?
Wifi - Works well in built up areas and indoors
Cell ID - Works well, quite accurate with triangulation
GPS - Long fix time, high accuracy, doesn’t work well in built-up areas....
Lead on to... but there’s one main alternative.
At what point do you reload data?
Wifi - Works well in built up areas and indoors
Cell ID - Works well, quite accurate with triangulation
GPS - Long fix time, high accuracy, doesn’t work well in built-up areas....
Lead on to... but there’s one main alternative.
At what point do you reload data?
Wifi - Works well in built up areas and indoors
Cell ID - Works well, quite accurate with triangulation
GPS - Long fix time, high accuracy, doesn’t work well in built-up areas....
Lead on to... but there’s one main alternative.
At what point do you reload data?
Wifi - Works well in built up areas and indoors
Cell ID - Works well, quite accurate with triangulation
GPS - Long fix time, high accuracy, doesn’t work well in built-up areas....
Lead on to... but there’s one main alternative.
At what point do you reload data?
Wifi - Works well in built up areas and indoors
Cell ID - Works well, quite accurate with triangulation
GPS - Long fix time, high accuracy, doesn’t work well in built-up areas....
Lead on to... but there’s one main alternative.
At what point do you reload data?
Wifi - Works well in built up areas and indoors
Cell ID - Works well, quite accurate with triangulation
GPS - Long fix time, high accuracy, doesn’t work well in built-up areas....
Lead on to... but there’s one main alternative.
At what point do you reload data?
Wifi - Works well in built up areas and indoors
Cell ID - Works well, quite accurate with triangulation
GPS - Long fix time, high accuracy, doesn’t work well in built-up areas....
Lead on to... but there’s one main alternative.
Samsung - Android market rules.. ? check it out first
Samsung - Android market rules.. ? check it out first
Samsung - Android market rules.. ? check it out first
Samsung - Android market rules.. ? check it out first
Objects implementing the Navigator interface (e.g. the window.navigator object) must also implement the NavigatorGeolocation interface [NAVIGATOR]. An instance ofNavigatorGeolocation would be then obtained by using binding-specific casting methods on an instance of Navigator.
4.1 Privacy considerations for implementors of the Geolocation API
User agents must not send location information to Web sites without the express permission of the user. User agents must acquire permission through a user interface, unless they have prearranged trust relationships with users, as described below. The user interface must include the URI of the document origin [DOCUMENTORIGIN]. Those permissions that are acquired through the user interface and that are preserved beyond the current browsing session (i.e. beyond the time when the browsing context[BROWSINGCONTEXT] is navigated to another URL) must be revocable and user agents must respect revoked permissions.
Objects implementing the Navigator interface (e.g. the window.navigator object) must also implement the NavigatorGeolocation interface [NAVIGATOR]. An instance ofNavigatorGeolocation would be then obtained by using binding-specific casting methods on an instance of Navigator.
4.1 Privacy considerations for implementors of the Geolocation API
User agents must not send location information to Web sites without the express permission of the user. User agents must acquire permission through a user interface, unless they have prearranged trust relationships with users, as described below. The user interface must include the URI of the document origin [DOCUMENTORIGIN]. Those permissions that are acquired through the user interface and that are preserved beyond the current browsing session (i.e. beyond the time when the browsing context[BROWSINGCONTEXT] is navigated to another URL) must be revocable and user agents must respect revoked permissions.
Objects implementing the Navigator interface (e.g. the window.navigator object) must also implement the NavigatorGeolocation interface [NAVIGATOR]. An instance ofNavigatorGeolocation would be then obtained by using binding-specific casting methods on an instance of Navigator.
4.1 Privacy considerations for implementors of the Geolocation API
User agents must not send location information to Web sites without the express permission of the user. User agents must acquire permission through a user interface, unless they have prearranged trust relationships with users, as described below. The user interface must include the URI of the document origin [DOCUMENTORIGIN]. Those permissions that are acquired through the user interface and that are preserved beyond the current browsing session (i.e. beyond the time when the browsing context[BROWSINGCONTEXT] is navigated to another URL) must be revocable and user agents must respect revoked permissions.
Objects implementing the Navigator interface (e.g. the window.navigator object) must also implement the NavigatorGeolocation interface [NAVIGATOR]. An instance ofNavigatorGeolocation would be then obtained by using binding-specific casting methods on an instance of Navigator.
4.1 Privacy considerations for implementors of the Geolocation API
User agents must not send location information to Web sites without the express permission of the user. User agents must acquire permission through a user interface, unless they have prearranged trust relationships with users, as described below. The user interface must include the URI of the document origin [DOCUMENTORIGIN]. Those permissions that are acquired through the user interface and that are preserved beyond the current browsing session (i.e. beyond the time when the browsing context[BROWSINGCONTEXT] is navigated to another URL) must be revocable and user agents must respect revoked permissions.
Objects implementing the Navigator interface (e.g. the window.navigator object) must also implement the NavigatorGeolocation interface [NAVIGATOR]. An instance ofNavigatorGeolocation would be then obtained by using binding-specific casting methods on an instance of Navigator.
4.1 Privacy considerations for implementors of the Geolocation API
User agents must not send location information to Web sites without the express permission of the user. User agents must acquire permission through a user interface, unless they have prearranged trust relationships with users, as described below. The user interface must include the URI of the document origin [DOCUMENTORIGIN]. Those permissions that are acquired through the user interface and that are preserved beyond the current browsing session (i.e. beyond the time when the browsing context[BROWSINGCONTEXT] is navigated to another URL) must be revocable and user agents must respect revoked permissions.
2 = Data status (A=good, V=navigation receiver warning)
3 = Current Latitude
4 = North/South in Latitude Hemisphere
5 = Current Longitude
6 = East/West in Longitude Hemisphere
7 = Speed over ground in knots
8 = (Direction of travel N:0°, E:90°, S:180°, W:270°)
9 = UT DateStamp
10 = Magnetic variation degrees (Easterly var. subtracts from true course)
11 = East/West
12 = Checksum
2 = Data status (A=good, V=navigation receiver warning)
3 = Current Latitude
4 = North/South in Latitude Hemisphere
5 = Current Longitude
6 = East/West in Longitude Hemisphere
7 = Speed over ground in knots
8 = (Direction of travel N:0°, E:90°, S:180°, W:270°)
9 = UT DateStamp
10 = Magnetic variation degrees (Easterly var. subtracts from true course)
11 = East/West
12 = Checksum
2 = Data status (A=good, V=navigation receiver warning)
3 = Current Latitude
4 = North/South in Latitude Hemisphere
5 = Current Longitude
6 = East/West in Longitude Hemisphere
7 = Speed over ground in knots
8 = (Direction of travel N:0°, E:90°, S:180°, W:270°)
9 = UT DateStamp
10 = Magnetic variation degrees (Easterly var. subtracts from true course)
11 = East/West
12 = Checksum
2 = Data status (A=good, V=navigation receiver warning)
3 = Current Latitude
4 = North/South in Latitude Hemisphere
5 = Current Longitude
6 = East/West in Longitude Hemisphere
7 = Speed over ground in knots
8 = (Direction of travel N:0°, E:90°, S:180°, W:270°)
9 = UT DateStamp
10 = Magnetic variation degrees (Easterly var. subtracts from true course)
11 = East/West
12 = Checksum
2 = Data status (A=good, V=navigation receiver warning)
3 = Current Latitude
4 = North/South in Latitude Hemisphere
5 = Current Longitude
6 = East/West in Longitude Hemisphere
7 = Speed over ground in knots
8 = (Direction of travel N:0°, E:90°, S:180°, W:270°)
9 = UT DateStamp
10 = Magnetic variation degrees (Easterly var. subtracts from true course)
11 = East/West
12 = Checksum
2 = Data status (A=good, V=navigation receiver warning)
3 = Current Latitude
4 = North/South in Latitude Hemisphere
5 = Current Longitude
6 = East/West in Longitude Hemisphere
7 = Speed over ground in knots
8 = (Direction of travel N:0°, E:90°, S:180°, W:270°)
9 = UT DateStamp
10 = Magnetic variation degrees (Easterly var. subtracts from true course)
11 = East/West
12 = Checksum
Commercial license expensive - especially when location isn’t core and you want to scale globally.
We’ve looked at available OS solutions (note examples) and the quality is bad.
Scraping can be more expensive and time consuming. Can run into legal issues. Quality?
Unified open location DB
Commercial license expensive - especially when location isn’t core and you want to scale globally.
We’ve looked at available OS solutions (note examples) and the quality is bad.
Scraping can be more expensive and time consuming. Can run into legal issues. Quality?
Unified open location DB
Commercial license expensive - especially when location isn’t core and you want to scale globally.
We’ve looked at available OS solutions (note examples) and the quality is bad.
Scraping can be more expensive and time consuming. Can run into legal issues. Quality?
Unified open location DB
Commercial license expensive - especially when location isn’t core and you want to scale globally.
We’ve looked at available OS solutions (note examples) and the quality is bad.
Scraping can be more expensive and time consuming. Can run into legal issues. Quality?
Unified open location DB
Commercial license expensive - especially when location isn’t core and you want to scale globally.
We’ve looked at available OS solutions (note examples) and the quality is bad.
Scraping can be more expensive and time consuming. Can run into legal issues. Quality?
Unified open location DB
Commercial license expensive - especially when location isn’t core and you want to scale globally.
We’ve looked at available OS solutions (note examples) and the quality is bad.
Scraping can be more expensive and time consuming. Can run into legal issues. Quality?
Unified open location DB
Can’t input lat,long yet...
Cloud infrastructure
Spotrank
Geocode on the client side where possible - i.e. use the Javascript SDK.
List
Simple explanation follows.
Simple explanation follows.
Simple explanation follows.
Simple explanation follows.
Simple explanation follows.
Simple explanation follows.
Simple explanation follows.
Simple explanation follows.
Simple explanation follows.
Simple explanation follows.
Simple explanation follows.
Simple explanation follows.
Simple explanation follows.
Simple explanation follows.