[英]CLFloor returning nil in iOS 8
所以我试图让Core Location中的CLFloor给我数据,而不是在Swift中返回nil,但是我无法做到。 我已经尝试了自己的代码和来自NSHipster的以下代码:
import CoreLocation
class LocationManagerDelegate: NSObject, CLLocationManagerDelegate {
func locationManager(manager: CLLocationManager!, didUpdateLocations locations: AnyObject[]!) {
let location: CLLocation? = locations[0] as? CLLocation
if let floor: CLFloor? = location?.floor {
println("Current Floor: \(floor?.level)")
}
}
}
let manager = CLLocationManager()
manager.delegate = LocationManagerDelegate()
manager.startUpdatingLocation()
有人知道如何在设备或模拟器上完成这项工作,我相信答案会让很多人受益。 如果有人知道这个或CLVisit的任何好资源,这也会有所帮助。
据我所知,在WWDC会议708中所说的内容 - 在室内采用核心位置 ,您需要在新Apple的Maps Connect页面上手动注册和设置特定场所,以便在iOS中获取楼层信息。
因此,似乎没有办法为任意场地自动提供楼层信息(例如,基于GPS的高度信息)。
基于Apple网站上的这两个链接
讨论如果当前位置的楼层信息不可用,则此属性的值为nil。
我不是swift的专家,但我认为返回nil可能意味着该位置没有楼层信息。
我不认为iOS会从我理解的内容中神奇地告诉你楼层级别https://developer.apple.com/videos/wwdc/2014/?id=708 。 你需要以某种方式以另一种方式获得该数字。 例如,您可以捕获一些iBeacon信号,并从该下载中获取楼层编号,或者在屏幕上滑动以找到您所在的正确楼层地图?
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.