title: Swift + CoreLocation not working
body: <p>I am trying to get the users location using CLLocationManager. For some reason locationManager:didUpdateLocations is never called. Bellow is the code for the view controller.</p>
  
  <p>Note: I have added the necessary keys to the info.plist and enabled location services in the simulator.</p>
  
  <p>The console output is: "Location to Allowed"</p>
  
  <p>Any ideas what I have done wrong?</p>
  
  <pre><code>    import UIKit
      import CoreLocation
  
      class ViewController: UIViewController, CLLocationManagerDelegate {
  
          var locationManager:CLLocationManager = CLLocationManager()
          var location_seenError: Bool = false
          var location_fixAchieved: B
  
  ool = false
      var location_status: NSString = "Not Started"
  
      override func viewDidLoad() {
          super.viewDidLoad()
          // Do any additional setup after loading the view, typically from a nib.
          location_seenError = false;
          location_fixAchieved = false;
          locationManager.delegate = self
          locationManager.desiredAccuracy = kCLLocationAccuracyBest
          locationManager.requestAlwaysAuthorization()
      }
  
      // Location Manager Delegate stuff
      // If failed
      func locationManager(manager: CLLocationManager, didFailWithError error: NSError!) {
          locationManager.stopUpdatingLocation()
          NSLog("locationManager:didFailWithError")
          if (error) {
              if (location_seenError == false) {
                  location_seenError = true
                  NSLog("Location Error")
              }
          }
      }
  
      func locationManager(manager: CLLocationManager, didUpdateLocations locations: [AnyObject]!) {
          NSLog("locationManager:didUpdateLocations")
          if (location_fixAchieved == false) {
              location_fixAchieved = true
              var locationArray = locations as NSArray
              var locationObj = locationArray.lastObject as CLLocation
              var coord = locationObj.coordinate
  
              NSLog("lat: \(coord.latitude)")
              NSLog("lon: \(coord.longitude)")
          }
      }
  
      // authorization status
      func locationManager(manager: CLLocationManager,
          didChangeAuthorizationStatus status: CLAuthorizationStatus) {
              var shouldIAllow = false
  
              switch status {
              case CLAuthorizationStatus.Restricted:
                  location_status = "Restricted Access to location"
              case CLAuthorizationStatus.Denied:
                  location_status = "User denied access to location"
              case CLAuthorizationStatus.NotDetermined:
                  location_status = "Status not determined"
              default:
                  location_status = "Allowed to location Access"
                  shouldIAllow = true
              }
              NSNotificationCenter.defaultCenter().postNotificationName("LabelHasbeenUpdated", object: nil)
              if (shouldIAllow == true) {
                  NSLog("Location to Allowed")
                  // Start location services
                  manager.startMonitoringSignificantLocationChanges()
                  locationManager.startMonitoringSignificantLocationChanges()
              } else {
                  NSLog("Denied access: \(location_status)")
              }
      }
  }
  </code></pre>