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

标签 ios swift ios7.1

我正在快速开发一个简单的 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()
}

关于ios - self.locationManager.requestAlwaysAuthorization() 仅适用于 iOS 8.0 或更高版本 - Swift,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35031792/

相关文章:

ios - Phonegap 插入查询 + 不起作用

ios - NSNumber 实例不会保留值

swift - 某些数据未从 Firebase 数据库 Swift 3 中读取

ios - 多行 UISegmentedControl 文本

ios - iOS 应用程序的外部媒体播放器支持

xcode - 自 iOS 7.1 以来的 UITextField 水平对齐错误

ios - Swift Firebase Like Post in Table View

ios - 有没有一种方法可以像 Xcode 中的函数一样代码折叠属性?

Swift 设置子类 UIView 的宽度和高度

ios - 如何在我的 iPhone 应用程序中显示我的应用程序的内存使用情况