1

iOS 5のstartMonitoringForRegionメソッドで問題が発生しました。ドキュメントには、メソッドがパラメーター「accuracy」を取得していると記載されています。

- (void)startMonitoringForRegion:(CLRegion *)region desiredAccuracy:(CLLocationAccuracy)accuracy

私は現在、ユーザーが監視ポイントから半径25メートルのところにいるときにユーザーに通知するアプリを開発しています。アプリはkCLLocationAccuracyBestForNavigation設定でGPSを使用します。私は次のような(CLRegion *)リージョンを作成しています:

CLRegion *pointRegion = [[CLRegion alloc] initCircularRegionWithCenter:pointLocation radius:25.0 identifier:identifier];

kCLLocationAccuracyBestForNavigationのstartMonitoringForRegionで精度パラメーターを設定します。

リージョンの監視は私のアプリではうまく機能しますが、didEnterRegionメソッドは、ユーザーが監視対象のリージョンから25メートルではなく、約100メートル離れているときに起動します。

Appleのドキュメントに記載されていないstartMonitoringForRegionのradiusの最小値はありますか、それとも何か間違ったことをしていますか?リージョンモニタリングを比較的小さな値(5〜25メートルなど)に設定することは可能ですか?

4

1 に答える 1

2

importantLocationChangesをオンにしない限り、iOSリージョンモニタリングを低い値に設定することはできません。地域の監視はセルラーネットワークに基づいているため、米国の大都市でのみ機能しています。

于 2012-07-18T00:37:24.380 に答える