CLLocationManager startUpdatingLocation vs startMonitoringSignificantLocationChanges

时间:2011-09-13 19:37:38

标签: objective-c ios cllocationmanager

我正在开发一个Web应用程序,使用户只有在某些指定区域才能登录该应用程序。我在应用程序开头调用locationManager startUpdatingLocation来获取用户的位置并启用/禁用登录。

用户登录后,我致电

[locationManager stopUpdatingLocation];
[locationManager startMonitoringSignificantLocationChanges];

并在更新的位置位于该区域之外时将用户注销。使用这两种方法会以任何方式发生冲突吗? (我正在模拟器上测试代码,因此位置始终相同)。

注意:我没有使用didEnterRegiondidExitRegion,因为所有内容都由现有的Javascript代码处理。我只发送用户的当前位置。

1 个答案:

答案 0 :(得分:2)

这取决于用户登录后您所需的位置。当您监控重大更改时,您的locationManager将仅在重大更改时收到通知。 (例如,新手机信号塔,改变wifi,其他应用程序呼叫位置等)。它不会一致。如果你关心的只是用户登录,我可能会一起完成重要的监控。如果您仍然需要位置,那么请准备好仅在该位置获得零星的更新。