小位置变化检测

时间:2010-08-02 13:10:37

标签: iphone gps location

我需要检测iphone的小位置变化,我尝试了名为Locate Me的样本,但它无法识别位置的微小变化。有没有办法做到这一点?

先谢谢。

祝你好运 约翰

1 个答案:

答案 0 :(得分:0)

您期望的变化有多小?

也许您应该将准确度设置为最大值并计算委托方法的位移。

配置位置管理器以使其发挥最佳效果。


    [locationManager setDesiredAccuracy:kCLLocationAccuracyBest];
    [locationManager setDistanceFilter:0.0];

然后在委托方法上:


- (void)locationManager:(CLLocationManager *)manager didUpdateToLocation:(CLLocation *)newLocation fromLocation:(CLLocation *)oldLocation {
    // Calculate the distance between the two locations
    CGFloat distance = [newLocation distanceFromLocation:oldLocation];

    if (distance >= MIN_DISPLACEMENT) {
        // Do something
    } else {
        // Do something
    }
}

要从位置管理器获取更准确的数据,请在Info.plist上为UIRequiredDeviceCapabilities(location-services,gps)设置正确的密钥。