Вопрос

Я использую следующие условия, чтобы убедиться, что местоположение, которое я получаю адекватной точностью, в моем случае KCllocationAccuRacybest. Но проблема в том, что я все еще получаю неточности.

// Filter out nil locations
if(!newLocation)
    return;

// Make sure that the location returned has the desired accuracy
if(newLocation.horizontalAccuracy < manager.desiredAccuracy)
    return;

// Filter out points that are out of order    
if([newLocation.timestamp timeIntervalSinceDate:oldLocation.timestamp] < 0)
    return;

// Filter out points created before the manager was initialized
NSTimeInterval secondsSinceManagerStarted = [newLocation.timestamp timeIntervalSinceDate:locationManagerStartDate];
if(secondsSinceManagerStarted < 0)
    return;

// Also, make sure that the cached location was not returned by the CLLocationManager (it's current) - Check for 5 seconds difference
if([newLocation.timestamp timeIntervalSinceReferenceDate] < [[NSDate date] timeIntervalSinceReferenceDate] - 5)
    return;

Когда я активирую GPS, я получаю неточные результаты, прежде чем я действительно получаю точный результат. Какие методы вы используете, чтобы получить точное / точное местоположение информации?

Это было полезно?

Решение 2

Основная причина, по которой я получал неточные результаты, было из-за этого состояния:

if(newLocation.horizontalAccuracy < manager.desiredAccuracy)

Я использовал kCLLocationAccuracyBest как доставка, и это отрицательное число. Вы не должны использовать его для сравнения.

Решение:if(newLocation.horizontalAccuracy < 10.0)

Другие советы

GPS медленный, по крайней мере, по сравнению с терпением пользователя, поэтому менеджер местоположения возвращает лучшее, что он имеет до получения нового, действительного чтения GPS. Вы можете либо заставить пользователю ждать, однако долгое время требуется, чтобы получить точный прочитанный или иметь какую-то дополнительную обратную связь, способ, которым Google Maps делает, с круг, чем точка.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top