2009-07-28 10 views
5

私は古いiPhoneでも信頼できる場所を使いたいです。しかし、多くの測定値(特にセルタワーからのもの)はあまりにも不正確です。おもう。CLLocation精度はどのくらい正確ですか?

私の位置+精度の半径(またはGoogleマップのアプリを見る)をプロットすると、推定円の中心は一般的に私の物理的な場所に近いことがわかります。私は、 "精度"の数値を半分にすると、99%の時間内にまだ円になるだろうと推測しています。

これは確率的なゲームだと私は信じています - ロケーションマネージャーは、正確に99.99999%の推定値を提供しようとしているので、意図的に広いマージンを与えています。任意の考え/情報?

答えて

0

CoreLocationを使用している場合、「回答」が改善しています。私は "最高の"答えが100m以内にほぼ常に正確であることに気付きました。理論的には、あなたはおそらく普通に与えられている "バッファ"を減らすことができます。しかし、実際に知る唯一の方法は、私がやることですが、テストテストをテストすることです。すべての世代からiphoneとipodを見つけて、あなたが得ている正確さのタイプとあなたが得ている結果のタイプを見てください。多くの点で、作成しているアプリケーションの種類によって異なりますが、ユーザーの所在に基づいて機密または重要な情報を提供したい場合は、フレームワークがほぼ正確な場所を提供するまで待つ必要があります。

+0

私は可能な限り最良の場所を待っています。私の懸念事項は、「正確にこの報告された場所がどれほど正確か」です。私の信念はすべて報告された精度(1000m、10mなど)が高いバイアスをかけられていることです。 – BankStrong

+0

それは明らかです。 – TahoeWolverine

2

CoreLocationフレームワークは、horizo​​ntalAccuracy/verticalAccuracyプロパティを使用して取得したCLLocationごとに円の半径を指定します。あなたはCLLocationManagerに、これらのタイプを使用しdesiredAccuracyプロパティを指定することができます。

kCLLocationAccuracyNearestTenMeters, kCLLocationAccuracyHundredMeters, kCLLocationAccuracyKilometer, kCLLocationAccuracyThreeKilometers;

あなたが所望の範囲の中に入るときに、あなたが通知を得ます。つまり、CLLocationManagerを使用すると、最初のイベントができるだけ早く与えられ、その後のイベントは条件を満たすイベントになります。

+0

私は、望ましい精度を求めることに集中することは少なく、 "真の"正確さを知ることにもっと興味を持っています。 CoreLocationから「この場所は半径100メートル以内で良い」と表示された場合、実際には「この場所は時間の50%以内にあります」という意味ですか? – BankStrong