I just can get my CLLocationManager to authorise. (swift under ios8) I even add an explicit requestAlwaysAuthorization call (which I don't need with objC under ios7)
func finishLaunch() { //ask for authorization let status = CLLocationManager.authorizationStatus() if(status == CLAuthorizationStatus.NotDetermined) { self.locationManager.requestAlwaysAuthorization(); } else { self.startMonitoring() } ... }
the callback never gets anything but NotDermined and there is no UIAlertView shown to the user.
func locationManager(manager: CLLocationManager!, didChangeAuthorizationStatus status: CLAuthorizationStatus) { if(status == CLAuthorizationStatus.NotDetermined) { println("Auth status unkown still!"); } self.startMonitoring() }
Am I doing it wrong? -- Feels like a bug to me but I'd like some feedback
Keep in mind that NSLocationAlwaysUsageDescription
or NSLocationWhenInUseUsageDescription
keys are now mandatory, so you should include that in your plist.
The only thing that you have to do is to add the Key "NSLocationWhenInUseUsageDescription" to your app info.plist then make a CLLocationManager requestWhenInUseAuthorization method and call it in the viewDidLoad.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With