Apple - Why does iPhone Maps app sometimes ask to enable Wi-Fi for "accuracy", even though Location Services (GPS) is enabled?
The iPhone uses assisted GPS to improve the accuracy of the location system using GPS and cell towers. Wi-Fi networks are used to help determine the device's location; this is called a hybrid positioning system (XPS).
Prior to iOS 4 iOS tapped into the Skyhook Wireless database of Wi-Fi hotspots and their locations. Apple disclosed in April 2010 that they had switched over to their own proprietary database.
If Location Services is on, your device will periodically send the geo-tagged locations of nearby Wi-Fi hotspots and cell towers in an anonymous and encrypted form to Apple, to augment the crowd-sourced database of Wi-Fi hotspot and cell tower locations. In addition, if you are traveling (for example, in a car) and Location Services is on, a GPS-enabled iOS device will also periodically send GPS locations and travel speed information in an anonymous and encrypted form to Apple, to be used for building up a crowd-sourced road traffic database. The crowd-sourced location data gathered by Apple does not personally identify you.
For your security concerns, read this Apple press release.
Hybrid positioning system (XPS)
A-GPS (Assisted GPS) is a method of localization where both GPS and cellular towers are used (cell-site triangulation) for improved accuracy.
WPS (Wi-Fi Positioning System) is when you use Wi-Fi network identification for localization.
Hybrid positioning system (XPS) is the combination of both A-GPS and WPS.
Using this combination you achieve maximum accuracy in both rural and densely populated areas.
Wikipedia on hybrid positioning:
Hybrid positioning systems are systems for finding the location of a mobile device using several different positioning technologies. Usually GPS (Global Positioning System) is one major component of such systems, combined with cell tower signals, wireless internet signals, Bluetooth sensors or other local Positioning Systems.
Here's a comparison of the performance of different localization services:
[source]
If you haven't used GPS for awhile, the GPS chipset won't have a current GPS almanac and ephemeris information. It takes up to a minute to gather enough of that information from the data the GPS satellites are sending to get a good fix, and it takes longer to collect a complete almanac and ephemeris information.
If the device can narrow its location down to a few hundred feet then it can send that information to Apple's servers and they can generate enough of that information to get the GPS chipset to lock on to the satellites much more quickly. This is often referred to as "assisted GPS," although that title is relatively misleading in many ways.
In theory it would be able to get that information from nearby cell towers, but historically iPhone ran on GSM, which had poor tower positioning capabilities when the iPhone first came out. Apple decided to go with wifi positioning primarily, and cell tower positioning secondarily.
So yes, you will receive a better position faster if you are near a wifi hotspot that apple has mapped (and due to its data collection program it's got a lot of wifi signals mapped) if you enable wifi.
I do not believe there's a way to disable the alert requesting you turn on your wifi.