# iOS Google Places API
# Getting Nearby Places from Current Location
Prerequisites
- Install pods in your project
- Install the GooglePlaces SDK
- Enable location services
First we need to get the users location by getting their current longitude and latitude.
- Import GooglePlaces and GooglePlacePicker
import GooglePlaces
import GooglePlacePicker
- Add the
CLLOcationManagerDelegate
protocol
class ViewController: UIViewController, CLLocationManagerDelegate {
}
- create your CLLocationManager()
var currentLocation = CLLocationManager()
- Request authorization
currentLocation = CLLocationManager()
currentLocation.requetAlwayAuthorization()
- Create a button to call the GooglePlacePicker method
@IBAction func placePickerAction(sender: AnyObject) {
if CLLOcationManager.authorizationStatues() == .AuthorizedAlways {
let center = CLLocationCoordinate2DMake((currentLocation.location?.coordinate.latitude)!, (currentLocation.location?.coordinate.longitude)!)
let northEast = CLLocationCoordinate2DMake(center.latitude + 0.001, center.longitude + 0.001)
let southWest = CLLocationCoordinate2DMake(center.latitude - 0.001, center.longitude - 0.001)
let viewport = GMSCoordinateBounds(coordinate: northEast, coordinate: southWest)
let config = GMSPlacePickerConfig(viewport: viewport)
placePicker = GMSPlacePicker(config: config)
placePicker?.pickPlaceWithCallback({ (place: GMSPlace?, error: NSError?) -> Void in
if let error = error {
print("Pick Place error: \(error.localizedDescription)")
return
}
if let place = place {
print("Place name: \(place.name)")
print("Address: \(place.formattedAddress)")
} else {
print("Place name: nil")
print("Address: nil")
}
})
}
}