location = [[CLLocationManager alloc] init];
location.desiredAccuracy = kCLLocationAccuracyBestForNavigation ;
location.distanceFilter = 10 ;
location.delegate=self;
locationEnabledBool = [CLLocationManager locationServicesEnabled];
if (locationEnabledBool ==NO) {
UIAlertView *locationAlert = [[UIAlertView alloc] initWithTitle:@"Location Service Disabled"
message:@"To re-enable, please go to Settings and turn on Location Service for this app."
delegate:nil
cancelButtonTitle:@"OK"
otherButtonTitles:nil];
[locationAlert show];
[locationAlert release];
}
else
[location startUpdatingLocation];
El valor de locationEnabledBool
es siempre YES
, independientemente de si o no los servicios de localización están activados. ¿Puede ayudar un cuerpo?cheque por locationServicesEnabled siempre devuelve SÍ, independientemente del interruptor de palanca manual para decidir si los servicios de localización están activados
'si ([CLLocationManager locationServicesEnabled] == NO && [CLLocationManager authorizationStatus] == kCLAuthorizationStatusDenied) { // dar mensaje de error }' un poco error tipográfico en la primera [soporte] y una && en lugar de || – kalafun