Привет, ваши коды, кажется, в порядке.
теперь это могут быть возможные причины:
в вашем init: попробуйте проверить, есть ли locationServicesEnabled или нет.
locationManager = [[CLLocationManager alloc] init];
if(locationManager.locationServicesEnabled == NO){
//Your location service is not enabled, Settings>Location Services
}
другая причина, вы можете запретить указывать местоположение вашего приложения.
Решение: просто удалите приложение с iPhone и пересоберите, теперь должно появиться всплывающее диалоговое окно «Разрешить расположение».
используйте это, чтобы проверить ошибку
- (void)locationManager:(CLLocationManager *)manager
didFailWithError:(NSError *)error
{
NSLog(@"Error while getting core location : %@",[error localizedFailureReason]);
if ([error code] == kCLErrorDenied) {
//you had denied
}
[manager stopUpdatingLocation];
}
в противном случае все кажется в порядке,
вы уже работали с ios 4.0, который можно установить в iPhone 3G и более поздних версиях,
если это был iPhone 2g, то эта проблема может возникнуть.