Ios swift用户';尝试获取当前位置时出现的位置问题
我正在做一个应用程序,它使用当前用户的位置和它的朋友的议程。 我写了一点代码,用来显示你的位置Ios swift用户';尝试获取当前位置时出现的位置问题,ios,swift,cllocationmanager,Ios,Swift,Cllocationmanager,我正在做一个应用程序,它使用当前用户的位置和它的朋友的议程。 我写了一点代码,用来显示你的位置 var loc :CLLocationCoordinate2D = self.mapView.userLocation.coordinate var region = MKCoordinateRegionMakeWithDistance(loc, 5, 5) self.mapView.setRegion(region, animated: true) 此外,我得到的错误是:
var loc :CLLocationCoordinate2D = self.mapView.userLocation.coordinate
var region = MKCoordinateRegionMakeWithDistance(loc, 5, 5)
self.mapView.setRegion(region, animated: true)
此外,我得到的错误是:
Trying to start MapKit location updates without prompting for location authorization. Must call -[CLLocationManager requestWhenInUseAuthorization] or -[CLLocationManager requestAlwaysAuthorization] first.
经过一些研究,我不明白我应该做些什么来改进我的位置[我从调试->模拟位置更改,但没有更改]
你能解释一下我需要记住什么以及我需要做什么来改进我的应用程序吗
[edit1]是否有可能模拟器的行为方式与手机的行为方式不同?我通过谷歌对其进行一点修改,解决了这个问题: 其中一个步骤是设置->常规->使用位置->始终,支持此操作来解决此问题,您将不会遇到此错误
此外,制作教程的人提到,你应该输入一个位置,以确保它工作,瞧 从iOS 8开始,您必须明确请求用户许可:
var systemVersion = NSOperatingSystemVersion(majorVersion: 8, minorVersion: 0, patchVersion: 0)
if NSProcessInfo.processInfo().isOperatingSystemAtLeastVersion(systemVersion) {
locationManager.requestAlwaysAuthorization()
}
// get current location
if CLLocationManager.authorizationStatus() == CLAuthorizationStatus.Authorized {
locationManager.startUpdatingLocation()
}
此外,您必须在Info.plist中明确声明权限问题
NSLocationAlwaysUsageDescription
你把MavVIEW的代码> SoxSuxReals< /Cord>属性设置为是吗?是的,并且我得到相同的错误,同样的,在海洋位置中间[实际上坐标是0和0 ]