2013-05-11 117 views
0

我是iOS新手。 我正在制作一个使用GPS位置更新的应用程序。 我正在获取当前位置并将位置更新到服务器。 我想获取仪表中的每一个变化并将其更新到服务器。 这里是我使用的代码:从GPS获取每个位置更新

locationManager = [[CLLocationManager alloc] init] ; 
locationManager.delegate = self; // send loc updates to myself 
locationManager.distanceFilter = 1.0f; // whenever we move 
locationManager.desiredAccuracy = kCLLocationAccuracyBest; 
[locationManager startUpdatingLocation]; 

但每米后位置不更新。它会更新但不是经常更新。

感谢您的帮助!

回答

1

它不这样工作。 iPhone使用的AGPS的准确度有限,取决于许多因素。它使用GPS,Wi-Fi和Cell Towers三角测量技术,并且在任何时候都可以使用这些三角测量的任意组合。所以,当GPS信号丢失,并且周围没有Wi-Fi热点时,可能会根据Cell Towers位置获得位置,这是非常不准确的(几百米)。它可能比这更糟糕,你可能会得到缓存的位置,这是远不及你目前的位置。即使你有GPS信号,你也无法期望在任何地方都能达到1米的精确位置。 GPS精度本身取决于许多因素。

+0

如果我拥有良好的Wi-Fi,那么我可以期待一个新的位置协调多少距离后? – Impossible 2013-05-11 16:35:03

0

总是使用kCLLocationAccuracyBestForNavigation。与kCLLocationAccuracyBest之间没有真正的电池使用差异,它们都以最高速度使用GPS。主要区别在于Apple所做的后期处理。因此,您可以尝试使用kCLLocationAccuracyBestForNavigation。