views:

49

answers:

3

I have been wondering how the iPhone determines location based on wifi, because I want to integrate this functionality into a java app of mine.

When I run a location check on my ip, it throws me all the way into some other neighborhood... But when I use my iPhone's location feature, it points right too me. (and GPS is turned off)

How does the iPhone determine location? Because I know it's not using an ip location.

+4  A: 

It uses a wifi access point database. See: http://skyhookwireless.com/ and specifically http://www.skyhookwireless.com/press/skyhookapple.php.

Kevin Sylvestre
Skyhook is written in C... I need something that can be used in Java
Jacob
It is, but it is also how the iPhone determines locations on WiFi.
Kevin Sylvestre
+1  A: 

It's using a triangulation scheme based off of known wifi access points. When this was first announced, I heard the name Skyhook Wireless thrown around, so it's possible that the iPhone is using their databases for location.

Dave DeLong
A: 

Cell tower triangulation? It can see the neighbouring GSM antennas and knows the relative signal strengths. This allows a pretty good estimate

Peter Tillemans