2016-01-19 90 views
1

我正在使用CLLocationManager來獲取位置座標。iOS如何知道座標是否正確

我使用

- (void)locationManager:(CLLocationManager *)manager 
    didUpdateLocations:(NSArray *)locations{ 
    [locations lastObject] 
    ... 
} 

他們可以得到的最後位置。

但我發現如果我們在最初得到lastObject。

位置不是真正的座標,會漂移。

在一段時間內,座標會收斂點。

但我怎麼能知道現在的價值真的在現在嗎?

非常感謝。

回答

1

您可以使用CLLocation對象的horizontalAccuracyverticalAccuracy屬性來知道度量的精度。

根據Apple docs

horizo​​ntalAccuracy:

爲位置,以米爲單位測得的不確定性的半徑。 (只讀)

位置的緯度和經度 識別圓的中心,並且該值表示圓的半徑 。負值表示地理位置的 緯度和經度無效。

verticalAccuracy:

米高度值的精度。 (只讀)

海拔屬性中的值可以是 加上或減去此屬性指示的值。負數 值表示高度值無效。

只需等待水平值降低,直到考慮座標所需的合理閾值爲止。

+1

...或者像以往一樣準確!不要等到不確定性達到零。 – Russell

+0

'位置的不確定性半徑'幾乎沒有任何意義。感謝iOS文檔。有沒有人明確/定量地知道這意味着什麼?可能它就像「在該地區的68%置信區間」或類似的東西。具體瞭解會很好。 – rysqui

相關問題