2010-02-25 16 views
6

Me gustaría probar qué sucede si mi aplicación no puede obtener las coordenadas de la ubicación. ¿Es posible desactivar el servicio de ubicación en el simulador, como en un iPod Touch con WiFI apagado?¿Deshabilitar el servicio de ubicación en el simulador de iPhone?

Todavía no tengo mi certificado de programa de desarrollador de iPhone, por lo que no puedo probarlo en mi dispositivo.

¡Gracias de antemano!

Respuesta

0

Como solución alternativa puede intentar simular la falla de la ubicación de actualización mediante la construcción de objetos NSError con los valores apropiados y llamando al correspondiente CLLocationManager delegue el método didFailWithError: manualmente.

+0

¡Gracias, intentaré esto! – iYassin

0

** No tenga en cuenta esto. Esto funciona alrededor de MapKit. Ver comentarios a continuación.

Desconecte la computadora de la conexión a Internet. How to.

EDIT: Puede probar el código de this site que se puede descargar here

Con AirPort, se obtiene el mapa. Con AirPort desactivado obtienes una vista cuadrada en blanco.

+1

Disculpe si desconecta internet también mostrará la ubicación "1 Infinite Loop, Cupertino, USA" en el simulador – Warrior

+0

@Warrior. Verifica la edición. por cierto. Siempre he usado esto. – erastusnjuki

+0

Al usar el marco de ubicación principal, y al llamar [locationManager startUpdatingLocation]; El método dará lugar a "1 Infinite Loop, Cupertino, EE. UU." incluso con el aeropuerto desactivado – Warrior

0

Que yo sepa, no puede deshabilitar el servicio de ubicación en el simulador.

El enfoque que normalmente uso cuando uso el servicio de ubicación es crear una clase contenedora simple alrededor de NSLocation adaptada a las necesidades de mi aplicación.

En este envoltorio, puede fingir fácilmente que el servicio no funciona en el simulador. Por ejemplo, podría tener un método "isEnabled" que devuelve falso en el simulador con un compilador definir como (#if TARGET_ IPHONE_SIMULATOR)

6

Puede deshabilitar los servicios de ubicación en el simulador;

  1. ejecutar su aplicación a través de Xcode por lo que el simulador se abre
  2. Detener la aplicación a través de Xcode (esto debe salir del simulador abierto)
  3. Abrir la aplicación Ajustes en la ventana del simulador de
  4. Privacidad> Localización. Desactivar los servicios de localización
  5. ejecutar su aplicación de nuevo, los servicios de localización deben estar deshabilitadas

espero que ayude!

+1

+1, aunque esta no era una opción disponible cuando el usuario originalmente publicó la pregunta. – Abizern

Cuestiones relacionadas