¿Cómo puedo establecer la ubicación (como se recogió en los servicios CoreLocation) en el simulador de iPhone?Establecer la ubicación en el simulador de iPhone
Respuesta
En mi devolución de llamada de delegado, compruebo si estoy ejecutando en un simulador (#if TARGET_ IPHONE_SIMULATOR
) y si es así, proporciono mi propio, revisado, Lat/Long. Que yo sepa, no hay otra manera.
Comenzando con Xcode 4.2, ahora hay un camino bajo el menú 'Depurar' en el simulador usando la entrada 'Ubicación' que permite establecer una ubicación personalizada o seleccionar desde algunos desplazamientos y ubicaciones predefinidos. – progrmr
vale tarde que nunca :)
me encontré con este iSimulate, que le permite enviar la ubicación de la falsificación de la aplicación. La solución NO es gratis.
> Q: How does iSimulate work?
> A: When added to your project, the iSimulate
> SDK library creates a listening server
> on your iPhone Simulator that waits
> for a connection from an iPhone/iPod
> running the iSimulate client. When
> such connection is established, the
> iSimulate client running on your
> iPhone/iPod captures all data from the
> accelerometer sensor, the touch
> events, the location and device ID and
> streams them to the server. The
> iSimulate SDK library then recreates
> all input events synthetically. This
> is entirely transparent to your
> application and does not interfere
> with your application's functionality.
De todos modos, estoy planeando obtener esto. se actualizará más pronto!
Acabo de contactar a los desarrolladores: "En las Opciones de iSimulate, accesibles desde el botón superior derecho de la pantalla" Seleccionar computadora para conectarse a ", puede seleccionar una de las otras cuatro ubicaciones para usar". Entonces, no hay mucha ayuda realmente. –
https://bitbucket.org/gnucoop/xamarin-ios-simulator-enhancements Esto ayuda a simular ubicaciones de forma gratuita – Pierre
Dónde quiere establecer su ubicación? puedes usar la API de Mapkit para mostrar tu ubicación. ver icodeblog.com para más detalles sobre cómo usar mapkit. También puede almacenar sus cordinates deseados simplemente cree un objeto CLLocation2D * ubicación; location.longitude = el valor de longitud deseado; location.latitude = el valor de latitud deseado;
Esta era una vieja pregunta de cuando era nuevo en el SDK. Ahora me doy cuenta de que no hay soporte para automatizar CoreLocation en el simulador, lo cual es una pena. – Cliff
La gente amable en FutureTap han hecho que el FTLocationSimulator disponible gratuitamente en GitHub. Le permite preparar una ruta de prueba utilizando, por ejemplo, Google Earth, y luego hacer que el simulador alimente estas coordenadas a su aplicación.
He escrito un blog post acerca de cómo usar FTLocationSimulator de cambiar fácilmente entre múltiples rutas durante las pruebas de las funciones de localización.
puede agregar archivos GPX a su proyecto y usarlo:
editar esquema> Opciones> permitir la simulación ubicación> escoger el nombre del archivo que contiene, por ejemplo:
<?xml version="1.0"?>
<gpx version="1.1" creator="Xcode">
<wpt lat="41.92296" lon="-87.63892"></wpt>
</gpx>
opcionalmente simplemente codificar el lat/lon valores que devuelve el administrador de ubicación. Esto es viejo estilo sin embargo.
lo que no tendrá que añadir al simulador, pero a su proyecto Xcode.
¿Cómo puedo usar la ubicación predefinida? ¿Puedes explicar en detalle por favor?Quiero saber sobre eso –
Proyecto> Esquemas> Editar esquema> Ubicación principal ... – Raptor
haga clic en xcode luego producto> esquemas> Editar esquema> core location –
A partir de iOS 5, el simulador tiene una ubicación configurable.
En el menú Depurar, la última entrada es "Lugar"; esto le da un submenú con:
- Ninguno
- personalizado Ubicación Tiendas
- de Apple
- de Apple
- City Paseo de la bicicleta
- Ejecutar la ciudad
- autopista Drive
Ubicación personalizada permite y o ingrese un valor Lat/Long. Bicycle ride, City Run y Freeway Drive son simulaciones de un lugar en movimiento (en Cupertino, por supuesto).
Por supuesto, esto no hace nada para ayudar con la depuración para iOS 4 (o anterior); ¡pero es una mejora definitiva!
¿dónde está el menú de depuración en el simulador IOS? –
Pre iOS 5 que podría hacerlo en código:
utilizo este fragmento justo antes de la @implementation
de la clase donde necesito mis datos de rumbo y ubicación falsos.
#if (TARGET_IPHONE_SIMULATOR)
@interface MyHeading : CLHeading
-(CLLocationDirection) magneticHeading;
-(CLLocationDirection) trueHeading;
@end
@implementation MyHeading
-(CLLocationDirection) magneticHeading { return 90; }
-(CLLocationDirection) trueHeading { return 91; }
@end
@implementation CLLocationManager (TemporaryLocationFix)
- (void)locationFix {
CLLocation *location = [[CLLocation alloc] initWithLatitude:55.932 longitude:12.321];
[[self delegate] locationManager:self didUpdateToLocation:location fromLocation:nil];
id heading = [[MyHeading alloc] init];
[[self delegate] locationManager:self didUpdateHeading: heading];
}
-(void)startUpdatingHeading {
[self performSelector:@selector(locationFix) withObject:nil afterDelay:0.1];
}
- (void)startUpdatingLocation {
[self performSelector:@selector(locationFix) withObject:nil afterDelay:0.1];
}
@end
#endif
Después de iOS 5 basta con incluir un archivo GPX en su proyecto como este para tener la ubicación actualizada continuamente Hillerød.gpx:
<?xml version="1.0"?>
<gpx version="1.1" creator="Xcode">
<wpt lat="55.93619760" lon="12.29131930"></wpt>
<wpt lat="55.93625770" lon="12.29108330"></wpt>
<wpt lat="55.93631780" lon="12.29078290"></wpt>
<wpt lat="55.93642600" lon="12.29041810"></wpt>
<wpt lat="55.93653420" lon="12.28998890"></wpt>
<wpt lat="55.93660630" lon="12.28966710"></wpt>
<wpt lat="55.93670240" lon="12.28936670"></wpt>
<wpt lat="55.93677450" lon="12.28921650"></wpt>
<wpt lat="55.93709900" lon="12.28945250"></wpt>
<wpt lat="55.93747160" lon="12.28949540"></wpt>
<wpt lat="55.93770000" lon="12.28966710"></wpt>
<wpt lat="55.93785620" lon="12.28977440"></wpt>
<wpt lat="55.93809660" lon="12.28988170"></wpt>
<wpt lat="55.93832490" lon="12.28994600"></wpt>
<wpt lat="55.93845710" lon="12.28996750"></wpt>
<wpt lat="55.93856530" lon="12.29007480"></wpt>
<wpt lat="55.93872150" lon="12.29013910"></wpt>
<wpt lat="55.93886570" lon="12.28975290"></wpt>
<wpt lat="55.93898590" lon="12.28955980"></wpt>
<wpt lat="55.93910610" lon="12.28919500"></wpt>
<wpt lat="55.93861330" lon="12.28883020"></wpt>
<wpt lat="55.93845710" lon="12.28868000"></wpt>
<wpt lat="55.93827680" lon="12.28850840"></wpt>
<wpt lat="55.93809660" lon="12.28842250"></wpt>
<wpt lat="55.93796440" lon="12.28831520"></wpt>
<wpt lat="55.93780810" lon="12.28810070"></wpt>
<wpt lat="55.93755570" lon="12.28790760"></wpt>
<wpt lat="55.93739950" lon="12.28775730"></wpt>
<wpt lat="55.93726730" lon="12.28767150"></wpt>
<wpt lat="55.93707500" lon="12.28760710"></wpt>
<wpt lat="55.93690670" lon="12.28734970"></wpt>
<wpt lat="55.93675050" lon="12.28726380"></wpt>
<wpt lat="55.93649810" lon="12.28713510"></wpt>
<wpt lat="55.93625770" lon="12.28687760"></wpt>
<wpt lat="55.93596930" lon="12.28679180"></wpt>
<wpt lat="55.93587310" lon="12.28719940"></wpt>
<wpt lat="55.93575290" lon="12.28752130"></wpt>
<wpt lat="55.93564480" lon="12.28797190"></wpt>
<wpt lat="55.93554860" lon="12.28833670"></wpt>
<wpt lat="55.93550050" lon="12.28868000"></wpt>
<wpt lat="55.93535630" lon="12.28900190"></wpt>
<wpt lat="55.93515200" lon="12.28936670"></wpt>
<wpt lat="55.93505580" lon="12.28958120"></wpt>
<wpt lat="55.93481550" lon="12.29001040"></wpt>
<wpt lat="55.93468320" lon="12.29033230"></wpt>
<wpt lat="55.93452700" lon="12.29063270"></wpt>
<wpt lat="55.93438280" lon="12.29095450"></wpt>
<wpt lat="55.93425050" lon="12.29121200"></wpt>
<wpt lat="55.93413040" lon="12.29140520"></wpt>
<wpt lat="55.93401020" lon="12.29168410"></wpt>
<wpt lat="55.93389000" lon="12.29189870"></wpt>
<wpt lat="55.93372170" lon="12.29239220"></wpt>
<wpt lat="55.93385390" lon="12.29258530"></wpt>
<wpt lat="55.93409430" lon="12.29295010"></wpt>
<wpt lat="55.93421450" lon="12.29320760"></wpt>
<wpt lat="55.93433470" lon="12.29333630"></wpt>
<wpt lat="55.93445490" lon="12.29350800"></wpt>
<wpt lat="55.93463520" lon="12.29374400"></wpt>
<wpt lat="55.93479140" lon="12.29410880"></wpt>
<wpt lat="55.93491160" lon="12.29419460"></wpt>
<wpt lat="55.93515200" lon="12.29458090"></wpt>
<wpt lat="55.93545250" lon="12.29494570"></wpt>
<wpt lat="55.93571690" lon="12.29505300"></wpt>
<wpt lat="55.93593320" lon="12.29513880"></wpt>
<wpt lat="55.93617360" lon="12.29522460"></wpt>
<wpt lat="55.93622170" lon="12.29537480"></wpt>
<wpt lat="55.93713510" lon="12.29505300"></wpt>
<wpt lat="55.93776000" lon="12.29378700"></wpt>
<wpt lat="55.93904600" lon="12.29531040"></wpt>
<wpt lat="55.94004350" lon="12.29552500"></wpt>
<wpt lat="55.94023570" lon="12.29561090"></wpt>
<wpt lat="55.94019970" lon="12.29591130"></wpt>
<wpt lat="55.94017560" lon="12.29629750"></wpt>
<wpt lat="55.94017560" lon="12.29670520"></wpt>
<wpt lat="55.94017560" lon="12.29713430"></wpt>
<wpt lat="55.94019970" lon="12.29754200"></wpt>
<wpt lat="55.94024780" lon="12.29816430"></wpt>
<wpt lat="55.94051210" lon="12.29842180"></wpt>
<wpt lat="55.94084860" lon="12.29820720"></wpt>
<wpt lat="55.94105290" lon="12.29799270"></wpt>
<wpt lat="55.94123320" lon="12.29777810"></wpt>
<wpt lat="55.94140140" lon="12.29749910"></wpt>
<wpt lat="55.94142550" lon="12.29726310"></wpt>
<wpt lat="55.94147350" lon="12.29687690"></wpt>
<wpt lat="55.94155760" lon="12.29619020"></wpt>
<wpt lat="55.94161770" lon="12.29576110"></wpt>
<wpt lat="55.94148550" lon="12.29531040"></wpt>
<wpt lat="55.94093270" lon="12.29522460"></wpt>
<wpt lat="55.94041600" lon="12.29518170"></wpt>
<wpt lat="55.94056020" lon="12.29398010"></wpt>
<wpt lat="55.94024780" lon="12.29352950"></wpt>
<wpt lat="55.94001940" lon="12.29335780"></wpt>
<wpt lat="55.93992330" lon="12.29325050"></wpt>
<wpt lat="55.93969490" lon="12.29299300"></wpt>
<wpt lat="55.93952670" lon="12.29277840"></wpt>
<wpt lat="55.93928630" lon="12.29260680"></wpt>
<wpt lat="55.93915410" lon="12.29232780"></wpt>
<wpt lat="55.93928630" lon="12.29202740"></wpt>
<wpt lat="55.93933440" lon="12.29174850"></wpt>
<wpt lat="55.93947860" lon="12.29116910"></wpt>
<wpt lat="55.93965890" lon="12.29095450"></wpt>
<wpt lat="55.94001940" lon="12.29061120"></wpt>
<wpt lat="55.94041600" lon="12.29084730"></wpt>
<wpt lat="55.94076450" lon="12.29101890"></wpt>
<wpt lat="55.94080060" lon="12.29065410"></wpt>
<wpt lat="55.94086060" lon="12.29031080"></wpt>
<wpt lat="55.94092070" lon="12.28990310"></wpt>
<wpt lat="55.94099280" lon="12.28975290"></wpt>
<wpt lat="55.94119710" lon="12.28986020"></wpt>
<wpt lat="55.94134130" lon="12.28998890"></wpt>
<wpt lat="55.94147350" lon="12.29007480"></wpt>
<wpt lat="55.94166580" lon="12.29003190"></wpt>
<wpt lat="55.94176190" lon="12.28938810"></wpt>
<wpt lat="55.94183400" lon="12.28893750"></wpt>
<wpt lat="55.94194220" lon="12.28850840"></wpt>
<wpt lat="55.94199030" lon="12.28835820"></wpt>
<wpt lat="55.94215850" lon="12.28859420"></wpt>
<wpt lat="55.94250700" lon="12.28883020"></wpt>
<wpt lat="55.94267520" lon="12.28893750"></wpt>
<wpt lat="55.94284350" lon="12.28902330"></wpt>
<wpt lat="55.94304770" lon="12.28915210"></wpt>
<wpt lat="55.94325200" lon="12.28925940"></wpt>
<wpt lat="55.94348030" lon="12.28953830"></wpt>
<wpt lat="55.94366060" lon="12.28966710"></wpt>
<wpt lat="55.94388890" lon="12.28975290"></wpt>
<wpt lat="55.94399700" lon="12.28994600"></wpt>
<wpt lat="55.94379280" lon="12.29065410"></wpt>
<wpt lat="55.94364860" lon="12.29095450"></wpt>
<wpt lat="55.94350440" lon="12.29127640"></wpt>
<wpt lat="55.94340820" lon="12.29155540"></wpt>
<wpt lat="55.94331210" lon="12.29198450"></wpt>
<wpt lat="55.94315590" lon="12.29269260"></wpt>
<wpt lat="55.94310780" lon="12.29318610"></wpt>
<wpt lat="55.94301170" lon="12.29361530"></wpt>
<wpt lat="55.94292760" lon="12.29408740"></wpt>
<wpt lat="55.94290350" lon="12.29436630"></wpt>
<wpt lat="55.94287950" lon="12.29453800"></wpt>
<wpt lat="55.94283140" lon="12.29533190"></wpt>
<wpt lat="55.94274730" lon="12.29606150"></wpt>
<wpt lat="55.94278340" lon="12.29621170"></wpt>
<wpt lat="55.94280740" lon="12.29649060"></wpt>
<wpt lat="55.94284350" lon="12.29679100"></wpt>
<wpt lat="55.94284350" lon="12.29734890"></wpt>
<wpt lat="55.94308380" lon="12.29837890"></wpt>
<wpt lat="55.94315590" lon="12.29852910"></wpt>
<wpt lat="55.94263920" lon="12.29906550"></wpt>
<wpt lat="55.94237480" lon="12.29910850"></wpt>
<wpt lat="55.94220660" lon="12.29915140"></wpt>
<wpt lat="55.94208640" lon="12.29902260"></wpt>
<wpt lat="55.94196620" lon="12.29887240"></wpt>
<wpt lat="55.94176190" lon="12.29794970"></wpt>
<wpt lat="55.94156970" lon="12.29760640"></wpt>
</gpx>
utilizo GPSies.com para crear el archivo de base de los datos GPX. Se requiere un poco de limpieza.
Activar mediante la ejecución del simulador y la elección de su archivo
- proyecto de ejecución en simulador de iPhone
Crear en el archivo de edición de textos siguiente archivo, lo llaman MyOffice por ejemplo. Hacer la extensión como .gpx
<?xml version="1.0"?> <gpx version="1.0" creator="MyName"> <wpt lat="53.936166" lon="27.565370"> <name>MyOffice</name> </wpt> </gpx>
Seleccionar en Xcode en el área de Simulación
Add GPX File to Project...
- Agregar archivo del menú creado para proyectar.
- ahora se puede ver su ubicación en la zona de Simular:
TextEdit no guarda el archivo .gpx. ¿Como lo hago? –
guárdelo como .txt (o .xml) y luego cambie el nombre a .gpx – beryllium
¡Gracias! Muy fácil, funciona genial. En caso de que alguien más use esto, aquí está el archivo GPX de muestra en el texto para que pueda copiarlo y pegarlo: Xml version = "1.0"?>
abierto simulador de iOS de depuración Menú -> Localización ->
- Ninguno
- personalizado Ubicación
- tiendas de Apple ...
en iOS Simulator m enu, vaya a Depurar -> Ubicación -> Ubicación personalizada. Allí puede establecer la latitud y la longitud y probar la aplicación en consecuencia. Esto funciona con mapkit y también con CLLocationManager.
- 1. Programando la ubicación del simulador de iphone
- 2. ¿Deshabilitar el servicio de ubicación en el simulador de iPhone?
- 3. Simulación de actualizaciones de ubicación en el simulador de iPhone
- 4. Ubicación actual en el simulador
- 5. Apagar iPhone en el simulador
- 6. Uso de la ubicación del núcleo en el simulador de iphone
- 7. Cómo reiniciar el simulador de iPhone
- 8. ¿Hay alguna manera de establecer la cantidad de memoria disponible en el simulador de iPhone?
- 9. notificación local de iphone en el simulador
- 10. AppStore en el simulador de iPhone Xcode
- 11. Cómo ver el llavero para el simulador de iphone
- 12. Establecer la ubicación de MessageBox?
- 13. ¿Cómo apago la cámara lenta en el simulador de iPhone?
- 14. Instalar la aplicación en el simulador de iphone
- 15. weinre con el simulador de iPhone
- 16. simulador de iphone usando el problema multitáctil
- 17. obteniendo imágenes desde el simulador de iPhone
- 18. Simulador de datos del núcleo del iPhone
- 19. MPMoviePlayerPlaybackDidFinishNotification se vuelve a llamar en el simulador de iPhone 4.3 al establecer contentURL
- 20. Simulador de iPhone ejecutándose invisible
- 21. simulador de iPhone y applicationWillTerminate()
- 22. simulador de iPhone para Windows
- 23. Establecer la ubicación del mouse
- 24. ¿Reduce el tamaño de la ventana del simulador de iPhone?
- 25. cómo comprobar el efecto shake en el simulador de iPhone?
- 26. Simular el modo avión en el simulador de iPhone
- 27. iPhone - Guardar UIImage en el escritorio en el simulador
- 28. pantalla de retina de Iphone en el simulador
- 29. ¿Automatiza las capturas de pantalla en el simulador de iPhone?
- 30. ¿Cómo pruebo una cámara en el simulador de iPhone?
I añadió un método para Xcode 6. http://stackoverflow.com/questions/19694205/customize-ios-simulator-preset-locations-to-fake-as-current-location/27299841#27299841 – Ohmy
¿Alguien ha logrado que esto funcione en el simulador React nativo? – Nikos