3

我正在编写一个应用程序,它应该提醒用户到达指定零售店附近(300 米内)。

我正在使用 API

[locationManager startMonitoringForRegion:grRegion desiredAccuracy:acc];

但无法获取进入和退出区域的事件。

我的问题是

  1. 这个 API 有多准确。如果我们指定 300 米范围,我会准确触发事件吗?还是仅当用户从一个蜂窝塔更改为另一个时才会触发此事件?
  2. 如果它无法在 300 米内获得事件,我该如何实现我的要求。

PS:- 我不想使用 API [locationManager startUpdatingLocation];,因为它会很快耗尽电池。

提前致谢。

4

1 回答 1

4

您将需要实施CLLocationManagerDelegate以拦截 和 的位置-didEnterRegion回调-didExitRegion

我已经在我的应用程序中使用这个精确的 API 将近一年了,我发现它非常准确,而且电池消耗最少。我会说这应该是你最好的途径,不会考虑使用-startUpdatingLocation,因为它需要更多的代码来实现你需要的东西,更不用说电池了。

实现委托和方法,你应该很高兴。您也可以使用模拟器中的位置更改对其进行测试。在实际使用中测试它们之前,让它们运行良好。

于 2012-06-04T16:20:49.440 回答