¿Existe una forma sencilla de limpiar el directorio donde xcode implementa una aplicación al compilar para el simulador de iPhone? Tengo una base de datos sqlite que se copia en la carpeta Documentos al inicio si es necesario. El problema es que podría cambiar mi esquema, pero la nueva base de datos no se copiará porque ya existe una.
Idealmente, cada vez que construyo, destruiría los contenidos anteriores. ¿Es esto posible o tengo que hacerlo manualmente?
iphone
xcode
ios-simulator
Travis Jensen
fuente
fuente
Respuestas:
El simulador instala aplicaciones en:
Verifique también:
Los archivos y directorios GUID coinciden con las aplicaciones instaladas del simulador.
Elimine manualmente todos esos archivos / directorios para eliminar todas las aplicaciones del simulador.
Sé que hay alguna forma de agregar scripts al proceso de compilación en XCode.
Además, parece que XCode cambia el GUID que usa en cada compilación (el directorio donde se encuentra mi aplicación cambia entre compilaciones en XCode), por lo que intentar eliminar el mismo directorio todo el tiempo no funcionará. Si solo está trabajando en una aplicación a la vez, borrar todo el directorio sería una opción.
fuente
git reset HEAD --hard && git clean -f
para eliminar una suscripción de calendario después de agregarla.De Apples Dev Resources:
Esto se parece a:
fuente
Hardware > Reset Content and Settings
La forma en que hago esto es simplemente hacer clic y mantener presionado el ícono de mi aplicación en el simulador; luego, cuando comience a moverse, haga clic en el blanco y negro (x). Aparecerá un mensaje que le preguntará si realmente desea eliminar y simplemente haga clic en Sí. La próxima vez que cree e implemente su aplicación, usará el nuevo sqlite db sin ningún problema y no tendrá que andar con tonterías en el sistema de archivos.
fuente
Después de iOS 5 en Mac OS X Lion, puede probar:
RemoveSimulatorApps.command
que contenga:PATH
.Supuestos
fuente
puede ser exagerado pero ...
también puede usar el menú y 'Restablecer contenido y configuración ...'
fuente
Lo que realmente está tratando de hacer es limpiar su base de datos, si ha cambiado el esquema. Una forma de hacer esto, y lo haría más feliz a largo plazo cuando comience a enviar la versión 2.0, 3.0, etc. de su aplicación, es verificar la versión de su tabla sqlite y, si ha cambiado, descartar la archivo antiguo y utilice el de su paquete.
Encontrar una manera de limpiar el Simulador no ayudará al problema del mundo real de cómo limpiar el iPhone de un cliente cuando envía una nueva versión con un nuevo esquema.
Para obtener puntos adicionales, después de determinar que ha encontrado un esquema antiguo, es posible que desee copiar la nueva base de datos sin destruir la antigua y cargar cualquier dato interesante de la base de datos antigua en la nueva. Luego elimine la vieja base de datos. De esa manera, puede conservar las adiciones de sus usuarios a la base de datos.
fuente
para Xcode> = 6
fuente
Si está utilizando Xcode 9 -> Barra de menú -> Hardware -> Borrar todo el contenido y la configuración
fuente
A partir de Xcode 6, puede hacer esto desde la línea de comando con: xcrun simctl erase
Además, la aplicación iOS Simulator (tanto la versión Xcode 6 como las versiones anteriores) tiene un elemento de menú llamado "Restablecer contenido y configuración" que se puede usar para borrar el dispositivo actualmente iniciado.
fuente
Esto funciona con Xcode 6:
Para .bash_profile
fuente
A partir de Xcode 6:
xcrun simctl erase <sim udid>
<- reinicia el simulador.fuente
Borrar caché de Xcode;
(Use ambos porque tienen una funcionalidad diferente)
Borrar contenido de datos derivados;
El panel derecho muestra el nombre de la carpeta y también el botón Eliminar en el lado derecho le permite eliminar todos los contenidos de datos derivados.
Borrar caché del simulador;
fuente
Como estaba explicando en un comentario debajo de la respuesta validada :
Estaba probando agregar y eliminar suscripciones de calendario. En un dispositivo real, puede eliminar una suscripción de calendario en Configuración , Cuentas , pero este menú no existe en el Simulador de iOS y no quería restablecer todo el simulador.
Así que terminé versionando localmente mi carpeta de Dispositivo con git y realicé los siguientes comandos para eliminar una suscripción de calendario después de agregarla:
Entonces los pasos son:
~/Library/Developer/CoreSimulator/Devices/
y hágale unacd
, luegogit init
cree un repositorio de gitgit commit -a "Message"
git reset --hard HEAD
git commit
desaparecen.fuente
En XCode, vaya a la opción de menú Ventana, seleccione Dispositivos y luego puede eliminar los que ya no necesita.
fuente
Para Xcode <= 5
Agregué lo siguiente a mi
~/.bash_profile
Simplemente destruye todas las aplicaciones de la simulación.
fuente