Триангуляция Wi-Fi на iOS 4.2.1 и текущее местоположение на разных симуляторах iOS - PullRequest
2 голосов
/ 15 марта 2012

У меня iPod Touch 2G, iOS 4.2.1, и я не могу определить местоположение устройства (с помощью триангуляции Wifi) после обновления программного обеспечения с iOS 3.2. Мой код:

-(IBAction) naitapraeguneasukoht: (id) sender 
{
     CLLocation*location=[[CLLocation alloc] initWithLatitude:57.797944 longitude:25.04858];
     MKCoordinateRegion region = {{0.0f, 0.0f}, {0.0f, 0.0f}};
     region.center = location.coordinate;
     region.span.longitudeDelta = 1.0f;
     region.span.latitudeDelta = 3.8f;

     [self.mapView setRegion:region animated:YES];
     [location release];

     self.locationManager = [[[CLLocationManager alloc] init] autorelease];
     locationManager.delegate = self;
     locationManager.desiredAccuracy = kCLLocationAccuracyThreeKilometers;
     [locationManager startUpdatingLocation];
}

- (void) locationManager: (CLLocationManager *) manager didFailWithError: (NSError *) error 
{
    NSString *teade = [[NSString alloc] initWithString:@"Ei õnnestunud asukohta tuvastada"];
    UIAlertView *alert = [[UIAlertView alloc] initWithTitle:@"Error" message:trade delegate:nil cancelButtonTitle: @"OK" otherButtonTitles:nil];
    [alert show];
    [teade release];
    [alert release];
}

- (void)locationManager:(CLLocationManager *)manager didUpdateToLocation:(CLLocation *)newLocation fromLocation:(CLLocation *)oldLocation 
{
    MKCoordinateRegion region;
    MKCoordinateSpan span;
    span.latitudeDelta=0.005f;
    span.longitudeDelta=0.005f;
    region.center=newLocation.coordinate;
    region.span=span;
    [mapView setRegion:region animated:TRUE];
}

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

Симулятор iOS 4.2 дает мне правильное местоположение, но симулятор iOS 5.0 дает мне Купертино. Почему это так и почему это не работает на моем устройстве?

...