Barcamp Antwerpen - How To Make Your Own Google Latitude

1,320 views

Published on

0 Comments
2 Likes
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total views
1,320
On SlideShare
0
From Embeds
0
Number of Embeds
190
Actions
Shares
0
Downloads
19
Comments
0
Likes
2
Embeds 0
No embeds

No notes for slide

Barcamp Antwerpen - How To Make Your Own Google Latitude

  1. 1. Barcamp Antwerp 21/03/09 Michaël Uyttersprot twitter.com/eMich // www.emich.be
  2. 2. More and more GPS enabled phones  Started all with the Nokia N95 ◦ iPhone 3G ◦ Nokia N79, N85, N97,… ◦ HTC G1 ◦ … and lots of others to come!
  3. 3. It becomes a lot easier to program mobile  apps External devices can be approached easily 
  4. 4. iPhone SDK  Python ME  CLDC a.k.a. J2ME  Native C++ because we all « love » that  … 
  5. 5. I love GPS-enabled services  I love Java  Google Maps does everything I once had in  mind … actually not really 
  6. 6. Great service, but limited to my friends  I want to show my location on my blog  But there is no API yet! 
  7. 7. No wordpress, written my own blog software  No third party moblogging  ◦ Does pictures ◦ Does geotagging based on picture metadata ◦ Does video as well But still no eMich latitude?! I suck… 
  8. 8. Different building blocks  ◦ GPS enabled phone: Nokia N79 ◦ J2ME using the JSR179 specification also known as « Location » ◦ Web server that records GPS coordinates ◦ Google Maps, of course, because eMich maps would be an impossible thing (except Open maps or something blablabla)
  9. 9. Location API  Obtain GPS coordinates from a GPS-enabled  phone Very easy: just a few lines of code! 
  10. 10. Criteria cr = new Criteria(); cr.setHorizontalAccuracy(500); LocationProvider locationProvider = LocationProvider.getInstance(cr); Location location=locationProvider.getLocation(60); Coordinates c = location.getQualifiedCoordinates(); c.getLatitude() c.getLongitude() c.getAltitude()
  11. 11. A thread loops every 10 seconds  Reads coordinates from Location API  Sends them to a web server: test.emich.be  Keeps in DB:  Latitude ◦ Longitude ◦ UserId ◦ Timestamp ◦
  12. 12. Reads last entry  Displays a map with a marker 
  13. 13. Push content based on location  ◦ Wikipedia articles ◦ Commercial messages… Doing fun stuff  ◦ How much time do I spend with my girlfriend? ◦ Mash it up for twitter to mash it up with fights
  14. 14. ?

×