Google Geolocation API

The Google Geolocation API determines a devices approximate location based on nearby cell towers, Wi-Fi nodes, or Bluetooth beacons, without requiring GPS.