Roh*_*wal 3 iphone nsdate core-location cllocationmanager ios
如何检查CLLocation对象并决定是否要使用它或丢弃结果并获取新的位置更新?
我在CLLocation上看到了timestamp属性,但我不确定如何将它与当前时间进行比较.
此外,在我比较时间并找到以秒为单位的差异之后,我应该使用该CLLocation对象的差异是什么值?什么是一个很好的门槛.
谢谢!
And*_*rea 10
检查时间戳非常重要,因为iOS通常会缓存该位置,并且作为第一个度量返回最后一个缓存,所以这里是我在Core Location Manager的委托方法中的方式:
- (void)locationManager:(CLLocationManager *)manager didUpdateLocations:(NSArray *)locations{
CLLocation * newLocation = [locations lastObject];
//check if coordinates are consistent
if (newLocation.horizontalAccuracy < 0) {
return;
}
NSTimeInterval interval = [newLocation.timestamp timeIntervalSinceNow];
//check against absolute value of the interval
if (abs(interval)<30) {
//DO STUFF
}
}
Run Code Online (Sandbox Code Playgroud)
我用了30秒.如您所见,我还检查结果的一致性,询问水平精度.
希望这有帮助,
安德里亚
| 归档时间: |
|
| 查看次数: |
6448 次 |
| 最近记录: |