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. It becomes a lot easier to program mobile
apps
External devices can be approached easily
4. iPhone SDK
Python ME
CLDC a.k.a. J2ME
Native C++ because we all « love » that
…
5. I love GPS-enabled services
I love Java
Google Maps does everything I once had in
mind
… actually not really
6. Great service, but limited to my friends
I want to show my location on my blog
But there is no API yet!
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. 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. Location API
Obtain GPS coordinates from a GPS-enabled
phone
Very easy: just a few lines of code!
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. 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
◦
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