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

从 CoreLocation 显着位置变化中过滤掉坏点

如何解决从 CoreLocation 显着位置变化中过滤掉坏点

我在我的应用中使用了显着位置更改功能,以便用户跟踪和保存位置。如果它在一个地方停留更长的时间进行跟踪 - 它仍然会注意到运动。这可能是由于手机更改了它所连接的手机信号塔。

有什么办法可以过滤掉 CLLocationManager 中的位置,即使您没有移动也能获取到位置?

我现在唯一要做的就是使用此代码检查重复项

func locationManager(_ manager: CLLocationManager,didUpdateLocations locations: [CLLocation]) {
    guard locations.first?.timestamp != self.lastCoordinate else {
        LocalLogger.location.info("Duplicate location recieved. Igoring")
        return
    }
    self.lastCoordinate = locations.first?.timestamp
    LocalLogger.location.log("Recieved Location")
    for location in locations {
        LocationManager.saveLocation(location: location)
    }
    LocationManager.startToMonitor(manager,delegate: self)
}

Positions tracked throughout the night without moving

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