定位不起作用
问题描述:
弹出询问位置没有显示出来,或者当它显示出来后,它在几秒钟后消失,位置只有在经历设置和设置允许定位服务时才起作用。我认为这可能是一个问题,实际弹出窗口。定位不起作用
let locationManager = CLLocationManager()
let authStatus: CLAuthorizationStatus =
CLLocationManager.authorizationStatus()
if authStatus == .notDetermined {
locationManager.requestWhenInUseAuthorization()
}
if authStatus == .denied || authStatus == .restricted {
showLocationServicesDeniedAlert()
return
答
locationManager可能不是本地变量,此代码才能正常工作。在授权提示出现后,您创建的CLLocationManager实例即被删除。删除locationManager实例后,iOS将取消位置授权提示。
确保它是您的视图控制器或应用程序委托类的成员变量。
您需要确保它是从主线程调用的。 – Swinny89