最も正確なiPhone GPS結果を見つける方法
-
05-07-2019 - |
質問
iPhoneアプリケーションでCLLocationManagerを1回実行しただけでは、最も正確な結果が得られなかったことをどこかで読んだことを思い出します(どこか忘れています)。
これは正確ですか?もしそうなら、この問題にどのように対処できますか?最も正確なGPSの結果を考え出したいのですが、最良の結果を作成できるのは1回だけかどうかと思います。
ご協力ありがとうございます!
解決
CLLocationManager *locationManager.desiredAccuracy = kCLLocationAccuracyBest;
可能な限り最高の結果が返されます。デリゲートメソッド
- (void)locationManager:(CLLocationManager *)manager didUpdateToLocation:(CLLocation *)newLocation fromLocation:(CLLocation *)oldLocation
設定した精度の設定に基づいて、ユーザーの位置が引き続き返されます。
場所が一度だけ必要な場合は、 self
で stopUpdatingLocation
を呼び出すことを忘れないでください。ユーザーの位置を継続的に更新する必要がある場合は、 stopUpdatingLocation
CoreLocationを使用してユーザーの位置を取得していますが、使用するのに非常に正確です。
他のヒント
現在のユーザーを取得するには 場所、のインスタンスを作成 CLLocationManagerクラスおよび構成 希望する精度で しきい値パラメーター。始める 場所の通知を受信する、 オブジェクトにデリゲートを割り当て、 startUpdatingLocationメソッドを呼び出します の決定を開始する ユーザーの現在の場所。新しいとき 位置データが利用可能、 ロケーションマネージャーは、割り当てられた デリゲートオブジェクト。ロケーションが更新された場合 すでに配信されています 最新の位置データも取得します CLLocationManagerから直接 新しいイベントを待たないオブジェクト 配信されます。
[...]
イベントのタイムスタンプの確認は 場所のために推奨 多くの場合、サービスは最後にキャッシュされたものを返します すぐに場所イベント。できる ラフを取得するには数秒かかります 古いデータが単純に位置修正される 最後を反映する方法として機能します 既知の場所。を使用することもできます 決定の手段としての精度 イベントを受け入れるかどうか。 より正確なデータを受け取ると、 位置情報サービスは追加の イベント、精度値 改善を反映 それに応じて。