Недавно увлекся мобильным программированием. Код ниже привередлив; иногда это работает, а иногда нет. Я пробовал предложения, которые нашел здесь, такие как перезапуск служб определения местоположения на виртуальном iphone. Это не проблема info.plist: у меня установлен NSLocationWhenInUseUsageDescription, и когда я отлаживаю, я вижу, что у него есть авторизация WhenInUse. Когда я отлаживаю, я получаю оператор println в didFailWithError, и он гласит: «Операция не может быть завершена. (Ошибка kCLErrorDomain 0.)». Я поместил код за кнопку, чтобы попробовать. Является ли надежность этой известной проблемой? Если я загружу приложение на устройство, оно исчезнет? Любые мысли оценены. Спасибо.
РЕДАКТИРОВАТЬ
Это находится в ViewController.swift в одном приложении шаблона представления.
let manager = CLLocationManager()
@IBAction func getMyLocation (sender : AnyObject){
manager.delegate = self
manager.desiredAccuracy = kCLLocationAccuracyBest
let status = CLLocationManager.authorizationStatus()
if status == CLAuthorizationStatus.NotDetermined
{
manager.requestWhenInUseAuthorization()
}
manager.startUpdatingLocation()
}
func locationManager(manager: CLLocationManager!, didUpdateLocations locations: [AnyObject]!) {
println("locations = \(locations)")
manager.stopUpdatingLocation()
}
func locationManager(manager: CLLocationManager!, didFailWithError error: NSError!){
println(error)
manager.stopUpdatingLocation()
}