CLLocationManager requestWhenInUseAuthorization () funktioniert nicht

Ich versuche, Ortungsdienste in meiner iOS-App zu verwenden, aber aus irgendeinem GrundrequestWhenInUseAuthorization funktioniert nicht. Wenn der Benutzer die App zum ersten Mal verwendet, werden Sie wie gewohnt nach Berechtigungen gefragt. Wenn Sie die App jedoch aus irgendeinem Grund ein zweites Mal öffnen, wirddidChangeAuthorizationStatusie @ -Methode wird nicht aufgerufen, daher kann ich den aktuellen Standort des Benutzers nicht auf der Karte anzeigen.

Mein Code ist unten:

 override func viewDidLoad() {
    super.viewDidLoad()
    // Do any additional setup after loading the view, typically from a nib
    locationManager.delegate = self
    locationManager.requestWhenInUseAuthorization()
    var config:NSURLSessionConfiguration = NSURLSessionConfiguration.defaultSessionConfiguration()
    config.URLCache = NSURLCache(memoryCapacity: 2 * 1024 * 1024, diskCapacity: 10 * 1024 * 1024, diskPath: "MarkerData")
    markerSession = NSURLSession(configuration: config)
 }



 func locationManager(manager: CLLocationManager!, didChangeAuthorizationStatus status: CLAuthorizationStatus) {
    if status == .AuthorizedWhenInUse {

        locationManager.startUpdatingLocation()
        mapView.delegate = self
        mapView.myLocationEnabled = true
        mapView.settings.myLocationButton = true
     }
 }

Antworten auf die Frage(2)

Ihre Antwort auf die Frage