');

iOS Ottenere luoghi nelle vicinanze dalla posizione corrente

Esempio

Prerequisiti

  1. Installa i pod nel tuo progetto
  2. Installa l'SDK di GooglePlaces
  3. Abilita i servizi di localizzazione

Per prima cosa dobbiamo ottenere la posizione degli utenti ottenendo la loro longitudine e latitudine correnti.

  1. Importa GooglePlaces e GooglePlacePicker
import GooglePlaces
import GooglePlacePicker
  1. Aggiungere il protocollo CLLOcationManagerDelegate
class ViewController: UIViewController, CLLocationManagerDelegate {
    
}
  1. crea il tuo CLLocationManager ()
var currentLocation = CLLocationManager()
  1. Richiedi l'autorizzazione
currentLocation = CLLocationManager()
currentLocation.requetAlwayAuthorization()
  1. Crea un pulsante per chiamare il metodo GooglePlacePicker

@IBAction func placePickerAction (mittente: 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")
            }
        })
    }        
}