...私は10.0メートルの半径を有する領域を追跡領域を利用していCLLocationManager didEnterRegion間違っ通知
manager = [[CLLocationManager alloc] init];
[manager setDistanceFilter:kCLDistanceFilterNone];
[manager setDesiredAccuracy:kCLLocationAccuracyNearestTenMeters];
manager.delegate = self;
...
[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メートル離れて私の現在の場所から例えばある地域の通知を取得するということです...と私はほとんど同じ時刻にいくつかの通知を得る...
何か提案はありますか?または、私はおそらく詳細を提供する必要がありますか?
[OK]を...私はこのことがいくつかの状況では私のトリッキーなことを理解しています...しかし、私はまだ3つの場所の通知を同時に取得する理由を取得していない私は1つから5m離れていることを知っています...他のものから100m離れていて最後のものから200m離れています...論理的にはちょっと意味がありません... –
あなたはそれについて失望していることを理解しています初めて私がそれを発見した。あなたの場所が約400メートルの範囲にあるためです。あなたの精度が200m以上であれば(そしてそれは場所の監視中です)、その範囲内のすべてがトリガーされます。私はあなたが与える精度は、あなたが地域監視を開始するときに無効になることを意味します。 – Andrea