У меня 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 дает мне Купертино. Почему это так и почему это не работает на моем устройстве?