ios - requestwheninuseauthorization - location manager swift tutorial
didFailWithError: Error Domain=kCLErrorDomain Code=0 "No se pudo completar la operación.(kCLErrorDomain error 0.) " (17)
- He reseteado el contenido y la configuración.
- Se eliminaron los datos de los datos derivados.
- Reinicié el Xcode y el Simulador y funcionó para mí.
de la respuesta de @Mem y muchos otros gracias
Quiero obtener la ubicación actual, pero en su lugar obtengo un error.
Este es un fragmento de mi controlador de vista.
- (void)viewDidLoad {
self.locationManager = [[CLLocationManager alloc] init];
[locationManager setDelegate:self];
[locationManager setDesiredAccuracy:kCLLocationAccuracyNearestTenMeters];
[locationManager startUpdatingLocation];
}
- (void)locationManager:(CLLocationManager *)manager
didUpdateLocations:(NSArray<CLLocation *> *)locations {
// I would get the latest location here
// but this method never gets called
}
- (void)locationManager:(CLLocationManager *)manager
didFailWithError:(NSError *)error {
NSLog(@"didFailWithError: %@", error);
}
Estoy esperando el método de delegado locationManager:didUpdateLocations:
para llamar, pero en su lugar, solo se llama a locationManager:didFailWithError:
e imprime esto:
didFailWithError: Error Domain=kCLErrorDomain Code=0 "The operation couldn’t be completed. (kCLErrorDomain error 0.)"
En el simulador, vaya a Configuración> General> Restablecer> Restablecer ubicación y privacidad
Salga del simulador y ejecute la aplicación nuevamente
1) comprueba que tienes una conexión WiFi y 3G válida
si lo haces entonces
2) vaya a la configuración y restablezca sus servicios de ubicación
3) reinicia tu configuración de red
esto debería ocuparse de ese problema. Está relacionado con el dispositivo / red y no con la aplicación. Es molesto, especialmente si tu aplicación depende de los servicios de localización y el dispositivo solo es WiFi y la gente da calificaciones negativas en la Appstore ... perdóname, me estoy poniendo un poco emocional allí
Cambiar la "Ubicación" en el simulador funcionó para mí.
Depurar> Ubicación> (Se marcó el mío Ninguno en lugar de City Bicycle Ride, por ejemplo)
Estaba obteniendo este error en el simulador. Al hacer clic en el botón de ubicación en el panel de depuración y establecer una ubicación, se solucionó el problema. (Asegúrese de que el botón sea azul)
He visto el problema anteriormente, hay una manera de resolverlo, pero solo puede funcionar una vez. Si desea ejecutar el proyecto nuevamente y necesita repetir la solución cada vez.
1.En Xcode, Producto -> Esquema -> Editar esquema, luego cancele el "Permitir ubicación simulador".
2. Al simulador de iOS y restablecer contenido y configuración.
3.De nuevo en el Xcode, repita el primer paso.
4. Al simulador de iOS y restablecer. Entonces funcionará.
Intente reiniciar el simulador (suponiendo que eso es lo que está usando).
Después de probar todo lo demás, esto funcionó para mí.
Ir a casa en el simulador
Inicio -> Configuración -> Privacidad -> Ubicaciones -> seleccione la aplicación y elija siempre
Para devs devueltos :) Simplemente seleccione " Debug->Location->Freeway Drive
" en el menú Simulador. Si todavía hay problema, intente después de hacer "Simulador-> Restablecer contenido y configuración" desde el menú del simulador. Esto me ayudó una vez con el mismo problema. Algún tiempo la ubicación del simulador está configurada en " Custom location
" debido a que no detecta nada.
Problemas como este se pueden resolver estableciendo la ubicación como " Apple
". Al menos funciona para fines de prueba.
Pruebe en el dispositivo. A veces, el simulador no puede tomar su ubicación.
Si estás usando el simulador:
- Presiona el
command + shift + ,
en Xcode para abrir el editor de esquema - Seleccione el esquema de ejecución
- Ve a la pestaña Opciones
- Marque ✅
Allow Location Simulation
- Seleccione una ubicación predeterminada en el menú desplegable
Seleccionar None
como su ubicación predeterminada puede haber causado el problema.
Si estás usando una custom location
asegúrate de tener el largo y el lat la forma correcta, tuve que invertirlo y perderlo 3 horas antes de darme cuenta ...
Simplemente ignore este error y espere más actualizaciones o un error diferente.
Los documentos para el administrador de ubicación dicen que este error es temporal. Le permite saber que no pudo recuperar una ubicación de inmediato, pero continúa intentándolo. "En tal situación, simplemente puede ignorar el error y esperar un nuevo evento". Lo cual es una manera realmente descabellada de usar un método llamado locationManager:didFailWithError:
Gracias a Apple!
Suponiendo que está utilizando el simulador, puede Debug -> Location
y establecer una ubicación.
Si no tiene ninguno, tendrá este error.
Tengo el mismo problema. Creo que las posibles explicaciones / correcciones están cubiertas en esta publicación SO .
Un reinicio del simulador no funcionó para mí.
Tuve que borrar todo a través de
"iOS Simulator" >> "Reset Content and Settings...
.