微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

在某些情况下,CLLocation 的 horizo​​ntalAccuracy 值是否无穷大?

如何解决在某些情况下,CLLocation 的 horizo​​ntalAccuracy 值是否无穷大?

我目前正在处理客户报告的崩溃问题。从崩溃日志看来,我们的应用程序正试图以 JSON 格式将位置数据发送到后端,它抛出 Invalid number value (infinite) in JSON write 因为 JSON 不支持无穷大值。

应用使用 Moya 库发送数据,这里是发送的位置数据(其中位置变量是 iOS 位置更新返回的 CLLocation 类型):

var dict =  ["latitude": location.coordinate.latitude,"longitude": location.coordinate.longitude,"speed": location.speed >= 0 ? location.speed : 0,"altitude": location.altitude,"horizontal_accuracy_estimate": location.horizontalAccuracy,"vertical_accuracy_estimate": location.verticalAccuracy] as [String: Any]

所以我猜这里的参数之一的值为 Double.infinity

但是,在检查 Apple 文档时,它没有指定甚至提到无穷大是可能的值之一,所以我很困惑。

当位置确实不准确时,我猜测 horizontalAccuracy 可能是 Double.infinity?但在那种情况下,根本不退货不是更好吗?因为在我们的应用中我们设置了:

desiredAccuracy = kCLLocationAccuracyBestForNavigation

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。