【发布时间】:2012-02-06 18:55:24
【问题描述】:
我在玩 CLLocaitonManager 时遇到了非常奇怪的情况...
manager = [[CLLocationManager alloc] init];
[manager setDistanceFilter:kCLDistanceFilterNone];
[manager setDesiredAccuracy:kCLLocationAccuracyNearestTenMeters];
manager.delegate = self;
我正在对半径为 10.0 米的区域使用区域跟踪...
[manager startMonitoringForRegion:region];
我定义的区域彼此非常接近,但绝对不小于 50-100 米...当我在 iOS (5.0) 模拟器中测试我的应用程序时(通过将位置设置为 Apple,然后返回我的自定义位置) 我同时收到多个通知,针对彼此靠近的区域...我还在检查检测到的区域位置与我当前位置之间的距离...
-(void)locationManager:(CLLocationManager *)manager didEnterRegion:(CLRegion *)region
{
CLLocation *regionLocation = [[CLLocation alloc] initWithLatitude:region.center.latitude longitude:region.center.longitude];
NSLog(@"didEnterRegion: %@ %f", region.identifier, [regionLocation distanceFromLocation:mapView.userLocation.location]);
[self notifyUserDidEnterRegion:region];
}
问题是我收到的区域通知例如距离我当前位置 200 米...而且我几乎同时收到很少的通知...
有什么建议吗?或者我应该提供更多细节吗?
【问题讨论】:
标签: iphone ios ios5 geolocation