Apple has created a new framework called CoreLocation for iPhone OS 2.0. This framework is almost certainly powered by Googles ‘my location’ cell tower database and Skyhooks Wifi database as used in iPhone OS 1.1.3 onwards.
From the “Core Location Framework” documentation in the iPhone SDK
“The Core Location framework lets you determine the current latitude and longitude of a device. The framework uses the available hardware to triangulate the user’s position based on nearby signal information. You use the classes and protocols in this framework to configure and schedule the delivery of location-related events.”
Interestingly CoreLocation enables tracking of the user, it possible for the iPhone to receive updates as the user moves around. If tracking is enabled a new update is sent everytime the user moves beyond a set distance (distanceFilter) from the last update. This will enable all sorts of useful applications like realtime map updates while driving and location triggers such as tell me when I’m within 1 mile of one of my buddies.
CoreLocation’s API is location technology agnostic i.e. theres no mention of cell towers, wifi or GPS. However we can speculate that tracking only really becomes useful when GPS is used. For example cell tower tracking is not very good for turn-by-turn driving directions.
The best mobile applications use as much context as they can get from the device, network and user. Knowing the users location is key to reducing keystrokes and letting the user get the information they want with the minimum of fuss – Apple have achieved this in iPhone OS 2.0 – expect some exciting applications in the next few months.