this thread looks answered. but i would like to explain that wifi assists gps.
a full gps lock can take anywhere from 90 seconds to 12 or 20 minutes maximum. wifi like other gps assistive technologies is a cheat , to save you those 24 minutes.
wifi scans the neighborhood of ssid and submits those wifi networks to apple, wigle.net or skyhook wireless. they send back your location and the phone uses that as your location until a full gps lock can be made.
another cheat that apple uses is "frequent locations" , that caused quite a stir in china!
apple uses your iPhone to crowdsource its database of wifi hotspots.
other cheats are
download constellation tables for the next week, so at any given time the gps receiver knows where to look, so it does not have to do a full scan
scan more then one channel at a time. most modern receivers scan 12 to 24 channels at once.
use the cell phone towers
a gps receiver needs 3 or more satellites to get a lock and it scans for those signals. and those satellites only transmit every 30 seconds or so. so gps companies use various cheats to get a faster lock.
if you interested, you can google for the full explanation. this is just something top off my head. i think it would be helpful