Objective c 哪个位置更准确?

Objective c 哪个位置更准确?,objective-c,ios4,core-location,Objective C,Ios4,Core Location,在确定用户位置时,这两种方法中哪一种更准确 // First [locationManager startUpdatingLocation] // Second [locationManager startMonitoringSignificantLocationChanges] 根据startUpdatingLocation更准确。从文件中: 您可以通过调用startUpdatingLocation方法启动标准位置服务。此服务最适合于需要对位置事件的传递进行更细粒度控制的应用程序。具体来说

在确定用户位置时,这两种方法中哪一种更准确

// First
[locationManager startUpdatingLocation]

// Second
[locationManager startMonitoringSignificantLocationChanges]
根据startUpdatingLocation更准确。从文件中:

您可以通过调用startUpdatingLocation方法启动标准位置服务。此服务最适合于需要对位置事件的传递进行更细粒度控制的应用程序。具体来说,它会考虑desiredAccuracy和distanceFilter属性中的值,以确定何时传递新事件。这最适用于导航应用程序或任何需要高精度位置数据或定期更新流的应用程序

这与
startMonitoringSignificantLocationChanges
相比,根据文档,后者更粗糙、更不准确:

对于不需要定期的位置事件流的应用程序,您应该考虑使用StistMeNoReTimeMalimeLoistCurror方法来启动事件的传递。这种方法更适合于大多数只需要初始用户位置定位,并且仅当用户移动了相当长的距离时才需要更新的应用程序。此接口仅在检测到设备相关基站的变化时才提供新事件,从而减少更新频率并显著提高电源使用率


您可以使用类的属性来控制位置更新的准确性。

第一个将在
CLLocationManager
类上设置的
desiredAccuracy
中为您提供更新。还要注意,
距离过滤器
也很重要

只有当你移动了一段“重要”的距离,这意味着更新很少时,才会触发重要的位置更改

请在此处查找文档: