3

我正在使用 CLLocationManager 来确定我当前的位置:

- (void)viewDidLoad
{
    locationManager = [[CLLocationManager alloc] init];
    [locationManager setDelegate:self];
    [locationManager startUpdatingLocation];
}

- (void)locationManager:(CLLocationManager *)manager didUpdateToLocation:(CLLocation *)newLocation fromLocation:(CLLocation *)oldLocation 
{
    self.currentLocation = newLocation;
    NSTimeInterval locationAge = -[newLocation.timestamp timeIntervalSinceNow];
    if (locationAge > 5.0) return;
    if (newLocation.horizontalAccuracy < 0) return;
    if (self.currentLocation == nil || self.currentLocation.horizontalAccuracy > newLocation.horizontalAccuracy) {
        self.currentLocation = newLocation;
    }
    [locationManager stopUpdatingLocation];
}

它适用于 iOS 5.1 模拟器,但不适用于 iOS 4.3 模拟器,我认为在 iOS 5.1 之前的真实设备中可能会出现问题。为什么它不起作用?

4

1 回答 1

0

iOS模拟器不支持iOS 5之前的模拟位置。您遇到的问题是模拟器的限制。

于 2014-03-06T03:56:48.590 回答