Welcome to WuJiGu Developer Q&A Community for programmer and developer-Open, Learning and Share
Welcome To Ask or Share your Answers For Others

Categories

0 votes
282 views
in Technique[技术] by (71.8m points)

CLLocationManager的失败捕获

我想在代理中观察到 CLError.Code.network.错误。所以测试:iphone不插电话卡,也不连网,在室内,但仍然拿不到这个错误。

测试结果:断开wifi的情况下,手机既不触发成功也不触发失败,开始会等待4,5分钟。然后触发了成功,精度200。然后开始连续不停的触发成功,经纬度不太一样,但精度都是200 。

预期 我预期的是触发network错误才对啊,哪位兄弟了解苹果的定位?

代码如下
`

class cl_ViewController : UIViewController,CLLocationManagerDelegate {

     
     let cl = CLLocationManager()
     
    override func viewDidLoad() {
        super.viewDidLoad()
        cl.delegate = self
        cl.requestAlwaysAuthorization()
        cl.startUpdatingLocation()
    }
    
    //成功
    func locationManager(_ manager: CLLocationManager, didUpdateLocations locations: [CLLocation]) {
    
        let location = locations[0] as CLLocation
    
        var coo = "(location.coordinate.longitude)   accuracy:(location.horizontalAccuracy)"   

        toast(msg: coo)
    }
    //失败
    func locationManager(_ manager: CLLocationManager, didFailWithError error: Error){
        var msg = ""

        switch (error as NSError).code {
        case CLError.Code.denied.rawValue:
            msg = ("拒绝")
        case CLError.Code.network.rawValue:
            msg = ("断网")
        case CLError.Code.locationUnknown.rawValue:
            msg = ("内部失败")
        default:
            msg = ( "未知错误")
        }
        toast(msg: msg)
    }

`


与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
Welcome To Ask or Share your Answers For Others

1 Answer

0 votes
by (71.8m points)
等待大神解答

与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
Welcome to WuJiGu Developer Q&A Community for programmer and developer-Open, Learning and Share
...