views:

1121

answers:

6

I have a nokia 5500 sport mobile phone, and I found after i installed google map, it can automatically locate to my current position. and I want to know how google map get my position and mark it on the map ? How can I programming implement this feature with symbian C++(nokia 5500 's operate system is Symbian 3rd).

A: 

It's possible your phone has GPS - even if it doesn't, it can triangulate based upon cell towers. Programmatically, you'll have to register @ Nokia (free, IIRC), get the symbian docs and have at it.

Good luck, GPS is fun (and maddening)

See this post for symbian queries, answers and complaints http://stackoverflow.com/questions/36685/should-i-learn-how-to-develop-on-symbian-os

KevinDTimm
I just want to know is there any functions in symbian which can get the position about the nearest cell tower's position or get my current position? Or what other programming detail about get the position or coordinate.
MemoryLeak
Steve has the answer I think.
Felix Kling
+1  A: 

It doesn't have GPS, so my guess is it communicates with different antennas of your GSM provider and triangulates its position using the coordinates of these antennas.

erelender
+8  A: 

This is one of those questions where you need to know the jargon in order to find the answer. The magic word is "Location API".

Using it, I found this: http://wiki.forum.nokia.com/index.php/Google_Maps_using_Location_Api_in_Symbian

For mobile devices, a location API sometimes more or less hides the details of how the location is actually discovered, and just tells the app where you are. If the phone has GPS, it will use that. Otherwise, the phone network will help it out - it might calculate based on distance and/or direction to one or more base stations, or it might just say "sorry, I can't be very accurate, but I know you're in this cell, so you must be with a few hundred yards of the base station (city cells), or a few of miles of it (rural cells)".

The API used on the page I link to seems to be specifically GPS. Not sure whether it exists on non-GPS handsets, but if you poke around the Symbian docs long enough you can probably find an alternate location API.

Steve Jessop
Note that the referred article talks about combining the google maps web api with Nokia Location API, not the actual Google Maps Symbian application provided by google. The API exists on all S60 handsets after a certain point (s60 3rd edition I think) and uses an external BT GPS if no built in GPS is available. Symbian picked up the Location API and made it their own eventually.
Ola
Thanks for the details. I think I that article caught my eye because it mentions Google Maps as well as Location APIs, and the questioner seems to want to implement something that combines the two. But if all the questioner wants is the Location API, it's still a start. I don't know whether Google's own mapping apps use the same location API or an alternative, but the question is both "how does Google do it?", and "how can I do it?". The latter is easier to answer and probably more useful.
Steve Jessop
+3  A: 

The Nokia 5500 does not have GPS, and the location API does not support network positioning on S60 3rd edition fp1 (at least I'm pretty certain of that - and I should be as I was working with LBS applications on Symbian when the 5500 was released.) Also network positioning require operator/carrier support and very few operators have that enabled in their network.

What Google maps does on every device without GPS is that it sends the ID of the current cell tower to a server that knows where all(?) cell towers are, and does and educated guess at how far from that tower you are. This is both on Symbian and on Java ME devices.

Better positioning in google maps is possible with a built in GPS. The Nokia Location API also supports external BT GPSes which was all that was available when the API was released.

Ola
A: 

The W3C have a draft standard for geolocation in JavaScript, which would mean one piece of geolocation code would make your website geolocation work with all mobiles. So far it's supported by Safari on iPhone and Google Android phones. We should all petition Nokia to support it in Symbian phones.

MarkJ