self.locationManager.requestAlwaysAuthorization() 仅适用于 iOS 8.0 或更高版本 - Swift

self.locationManager.requestAlwaysAuthorization() is only available on iOS 8.0 or newer - Swift

我正在 swift 中开发一个简单的 ios 应用程序,它获取用户的位置并显示位置。我需要将此应用设置为 ios 7.0 及更高版本,以便 iPhone 4 个用户可以使用此应用。但是,当我设置 Deployment Target7.0 我收到构建错误消息:

/Users/toing_toing/dev/xyz/HomePageViewController.swift:35:30: 'requestAlwaysAuthorization()' is only available on iOS 8.0 or newer

来自这一行:

self.locationManager.requestAlwaysAuthorization()

我目前需要该应用程序始终访问 GPS,但我找不到可修复部署目标错误的替换代码。我能做什么?

只需使用self.locationManager.startUpdatingLocation()

var authorizationStatus = CLLocationManager.authorizationStatus()
if (authorizationStatus == .AuthorizedWhenInUse || authorizationStatus == .AuthorizedAlways {
  locationManager.startUpdatingLocation()
}else if self.locationManager.respondsToSelector(Selector("requestAlwaysAuthorization")) {
   self.locationManager.requestAlwaysAuthorization()
}else {
   locationManager.startUpdatingLocation()
}