【问题标题】:Time interval between location updates, iphone位置更新之间的时间间隔,iphone
【发布时间】:2011-09-12 13:52:28
【问题描述】:

我有一个名为“myLocation”的 CLLocation 管理器

myLocation = [[CLLocationManager alloc] init];
    myLocation.desiredAccuracy = kCLLocationAccuracyBestForNavigation ;
        myLocation.delegate=self;
[myLocation startUpdatingLocation];

我需要知道位置更新之间的时间间隔。我正在使用时间戳来查找在 didUpdateToLocation 方法中找到新位置的时间,如下所示

- (void)locationManager:(CLLocationManager *)manager
    didUpdateToLocation:(CLLocation *)newLocation
           fromLocation:(CLLocation *)oldLocation
{
NSTimeInterval locationAge = abs([oldLocation.timestamp timeIntervalSinceNow]);

    NSString *timeinNSString = [NSString stringWithFormat:@"%f", locationAge];

    NSLog(@"Location Age is %@", timeinNSString);
}

但是 NSlog 总是打印 0。知道我在这里缺少什么吗? 感谢您提前提供任何帮助。

【问题讨论】:

    标签: iphone cllocationmanager frequency


    【解决方案1】:

    abs() 不适用于浮点数。请改用fabs()。将来,使用断点并在调试器中单步执行代码以检查它实际失败的位置。

    【讨论】:

    • 感谢您指出这一点。使用 fabs() 解决了这个问题。如果使用 abs(),代码不会失败。
    • @lxt:错了! @"%d" 用于整数,相当于@"%i"@"%f" 是浮点数和双精度数的正确格式说明符。
    • 你确实是对的。适合我在生病卧床时发帖!
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-12-06
    • 1970-01-01
    • 1970-01-01
    • 2013-04-22
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多