我想在代理中观察到 CLError.Code.network.错误。所以测试:iphone不插电话卡,也不连网,在室内,但仍然拿不到这个错误。
测试结果:断开wifi的情况下,手机既不触发成功也不触发失败,开始会等待4,5分钟。然后触发了成功,精度200。然后开始连续不停的触发成功,经纬度不太一样,但精度都是200 。
预期 我预期的是触发network错误才对啊,哪位兄弟了解苹果的定位?
`
class cl_ViewController: UIViewController {
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)
}
}
`