I know that to get a user’s location when GPS is not present, iOS approximates the user’s position by looking at his proximity to nearby WiFi hotspots, then comparing that to a large database of hotspots that’s stored server-side (see Skyhook).
What I want to know is: is it possible to cache the WiFi network information, and send the location request off later? I’d like to, for example, have the user tap a button and save the WiFi data. Then later, when he was internet connectivity, determine where he was when the button was originally tapped.
Apple’s Core Location API seems to be at too high of an abstraction level to be able to do this, but I could be missing something, or there might be another way to do this.
Thanks!
UPDATE: Rephrased question due to confusion.
There’s no API to access that current WiFi spots visible, and no API to request a location from WiFI spots.
There used to be an app called WiFiTrak that displayed what WiFi spots were in radio range, but Apple removed it from the app store because it used private APIs.