在文档中,它说它获得了一个大概的位置,然后以更精细和更精确的方式不断更新。我有一个按钮
[locManager startUpdatingLocation];
然后我实现
- (void)locationManager:(CLLocationManager *)manager didUpdateToLocation:(CLLocation *)newLocation fromLocation:(CLLocation *)oldLocation{
[locManager stopUpdatingLocation];
}
让它获得方向。出于某种原因,当我开车去某处时,它不会更新位置。我认为这是因为它获得了“一般位置”,然后没有足够的时间来获得准确的读数。我也有
locManager.desiredAccuracy = kCLLocationAccuracyBestForNavigation;
有什么想法?只需要一次准确的读数。难倒。感谢。
答案 0 :(得分:2)
快速解决方案:
if (newLocation.horizontalAccuracy > 2*locManager.desiredAccuracy) {
return;
}
更好的解决方案可能是等到精确度停止改善,在过去的5次更新中平均等等。