繁体   English   中英

CLFloor在iOS 8中返回nil

[英]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网站上的这两个链接

CLFloor参考

CLLoaction类参考

讨论如果当前位置的楼层信息不可用,则此属性的值为nil。

我不是swift的专家,但我认为返回nil可能意味着该位置没有楼层信息。

我不认为iOS会从我理解的内容中神奇地告诉你楼层级别https://developer.apple.com/videos/wwdc/2014/?id=708 你需要以某种方式以另一种方式获得该数字。 例如,您可以捕获一些iBeacon信号,并从该下载中获取楼层编号,或者在屏幕上滑动以找到您所在的正确楼层地图?

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM