2015-01-14 21 views

回答

0

我认为didUpdateLocations:回调实际上会在更新精度时再次调用。根据这一Apple docs on Core Location

除了位置对象的时间戳,您还可以使用 准确性由对象报告,以确定是否要接受 事件。由于它接收到更准确的数据,位置 服务可能会返回其他事件,准确度值 会相应地反映这些改进。抛弃不太准确的事件意味着您的应用浪费的时间更少,无论如何都无法有效地使用 。

您尝试过哪些测试来提高准确度?你在iPhone上试过了吗?你是否正确设置了代理和desiredAccuracy属性?

0

如果您提供以下代码,您将获得非常频繁的位置更新。

self.locationManager.desiredAccuracy = kCLLocationAccuracyBestForNavigation;

但据苹果公司,建议在充电器插入到iOS设备,而位置管理是有效的。这是因为电池电量快速消耗,同时获得更多的位置更新。

有精度的其他水平CLLocationManager(CLLocationManager为kCLLocationAccuracyBestForNavigation,kCLLocationAccuracyBest,kCLLocationAccuracyKilometer,kCLLocationAccuracyHundredMeters等)

0

有什么被称为该事件?

不可以。您可以继续获得相同的回调,但每个位置的准确性(可能)会提高。 “精度提高”没有回调。

您在回调中收到的CLLocation包含垂直和水平精度信息。