с использованием основного местоположения iphone api для получения некоторых местоположений.
Работает отлично, но меня озадачивает одна вещь.Те, которые я получаю, я вычисляю их «возраст», используя следующий код:
NSDate *eventDate = newLocation.timestamp;
NSTimeInterval locationAge = -[eventDate timeIntervalSinceNow];
, а затем печатаю возраст, используя:
NSLog(@"didupdateToLocation! lat: %f, lon: %f, accuracy: %f, age: %f", newLocation.coordinate.latitude, newLocation.coordinate.longitude, newLocation.horizontalAccuracy, locationAge);
В моем выводе возраст ВСЕГДАменее чем за одну секундупримеры журналов:
2011-09-15 14:31:40.417 Nuba[1393:707] didupdateToLocation! lat: 59.340484, lon: 18.052089, accuracy: 816.373281, age: 0.055586
2011-09-15 14:31:40.495 Nuba[1393:707] didupdateToLocation! lat: 59.340484, lon: 18.052089, accuracy: 816.373281, age: 0.125578
2011-09-15 14:31:40.565 Nuba[1393:707] didupdateToLocation! lat: 59.340477, lon: 18.051996, accuracy: 999.848989, age: 0.019127
Почему это?Конечно, в первый раз телефон не «случайно» кэшировался менее чем в одну секунду, каждый раз?
Я делаю что-то не так, когда вычисляю возраст?