Corelocation-不会调用didUpdateLocations

问题描述

我正在学习如何在ios14上获取位置信息。但是,从未调用didUpdateLocations。我已经设置了NSLocationAlwaysUsageDescription和NSLocationWhenInUseUsageDescription。当我在手机上测试此演示时,没有提示跳出询问我的位置许可。我可以保证调用函数startGetLocation。

<key>NSLocationAlwaysUsageDescription</key>
<string>Find location</string>
<key>NSLocationWhenInUseUsageDescription</key>
<string>Find location</string>

var myLocationManager: CLLocationManager?

override func viewDidLoad() {
    super.viewDidLoad()
    // Do any additional setup after loading the view.

    myLocationManager = CLLocationManager()
    self.myLocationManager?.delegate = self
    self.myLocationManager?.desiredAccuracy = kCLLocationAccuracyBest
    self.myLocationManager?.requestAlwaysAuthorization()
}

func startGetLocation() {
    self.myLocationManager?.startUpdatingLocation()
}

func locationManager(_ manager: CLLocationManager,didUpdateLocations locations:[CLLocation]) {
    if let currentLocation = locations.last {
        print("Altitude: \(currentLocation.altitude)")
    }
}

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)