あなたがいることを避けるために必要があるので、はい最高精度のIOSのいくつかの時間がキャッチから場所を取るここで私は「CURRENT_TIMESTAMP:今すぐ| | location_timestamplatitude_longitude緯度ロング」の形式を使用しました場所は正確な場所を示すコードです。
更新: 「それは最初の位置を返すために数秒かかることがあるので、ロケーションマネージャは、通常、直前にキャッシュされた位置データを提供し、それが利用可能になるなど、より最新の位置データを提供するため。何らかの行動をとる前に、ロケーションオブジェクトのタイムスタンプをチェックすることは、常に良い考えです」
参考:
https://developer.apple.com/reference/corelocation/cllocationmanager
注:あなたは、iPodのようなデバイスとiPad用の精度を変えることができ
//MARK: Location delgates
func locationManager(_ manager: CLLocationManager, didUpdateLocations locations: [CLLocation])
{
if locations.count > 0
{
let location = locations[locations.count-1]
let maxAge:TimeInterval = 60;
let requiredAccuracy:CLLocationAccuracy = 100;
let locationIsValid:Bool = Date().timeIntervalSince(location.timestamp) < maxAge && location.horizontalAccuracy <= requiredAccuracy;
if locationIsValid
{
NSLog(",,, location : %@",location);
NSLog("valid locations.....");
}
}
}
この回答を満たすためにあなたはhttps://developer.apple.com/reference/corelocationからこの引用を追加することができます/ cllocationmanager "初期位置を返すのに数秒かかることがあるため、通常、ロケーションマネージャは以前にキャッシュされたロケーションデータをすぐに配信し、最新のロケーションデータを使用できるようにして配信します。アクションを実行する前に、任意のロケーションオブジェクトのタイムスタンプをチェックしてください。 – Starlord
@Joakim私は答えを更新したコメントありがとうございます。 –
なぜこれを行うのですか? _ = locations.first – netshark1000