Сделать locationManager
переменной класса.Вы объявляете это как локальную переменную в viewDidLoad
, что означает, что она будет немедленно освобождена, потому что нет никаких сильных ссылок на нее вне этой функции.
class YourViewController : UIViewController, CLLocationManagerDelegate
{
var locationManager : CLLocationManager?
override func viewDidLoad()
{
super.viewDidLoad()
locationManager? = CLLocationManager()
locationManager?.requestWhenInUseAuthorization()
if CLLocationManager.locationServicesEnabled()
{
locationManager?.delegate = self
locationManager?.desiredAccuracy = kCLLocationAccuracyNearestTenMeters
locationManager?.startUpdatingLocation()
}
}
}