otros - como limpiar mi iphone de archivos basura
Limpiando el simulador de iPhone (14)
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 versiones anteriores) tiene un elemento de menú llamado "Restablecer contenido y configuración" que se puede utilizar para borrar el dispositivo que se está iniciando.
¿Existe una forma sencilla de limpiar el directorio donde xcode implementa una aplicación cuando se construye 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.
Idealmente, cada vez que construyo, nukearía los contenidos previos. ¿Es esto posible, o tengo que hacerlo manualmente?
A partir de Xcode 6:
xcrun simctl erase <sim udid>
<- reinicia el simulador.
Como estaba explicando en un comentario bajo 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 iOS Simulator y no quería restablecer todo el simulador.
Así que terminé localmente versionando mi carpeta de Dispositivo con git y realicé los siguientes comandos para eliminar una suscripción de calendario después de que la agregué:
$ git reset HEAD --hard
$ git clean -f
Entonces los pasos son:
- Instala tu aplicación en el simulador de iOS y haz lo que tienes que hacer
- Identifica tu dispositivo en
~/Library/Developer/CoreSimulator/Devices/
y~/Library/Developer/CoreSimulator/Devices/
uncd
, luegogit init
para crear un repositorio de git - Una vez que quiera guardar el estado, ejecute
git commit -a "Message"
- Haga lo que cambie la configuración (por ejemplo, agregar una suscripción de calendario) y realice sus pruebas
- Apagar el simulador
- Do
git reset --hard HEAD
- Inicie el simulador, todos los cambios realizados después de
git commit
se haya completado lagit commit
.
Después de iOS 5 en Mac OS X Lion, puedes probar:
- Cree un script llamado
RemoveSimulatorApps.command
que contenga:rm -rf "$HOME/Library/Application Support/iPhone Simulator/5.0/Applications/*"
- Guarde este script en un directorio en su
PATH
. - Haga que el archivo sea ejecutable, como por ejemplo:
chmod +x RemoveSimulatorApps.command
Suposiciones
- Es posible que desee invocar esto desde los botones de favoritos del teclado, como en un teclado Logitech o Microsoft con teclas programables (por lo tanto, guárdelo como un archivo .command en lugar de decir, .sh)
- Estás bien con volar todo en el simulador de iOS (ideal si estás trabajando activamente en una aplicación)
- Todas las notas de otros se refieren a ser una buena aplicación actualizable, etc. (Personalmente encontré esto útil, sin embargo b / c Tengo conmutadores de modo de desarrollo que vuelven a cargar una base de datos en un estado específico en el que estaba tratando de hacer un manejo consistente de robustez / error)
El simulador instala aplicaciones en:
"$HOME/Library/Application Support/iPhone Simulator/User/Applications"
También verifique:
"$HOME/Library/Developer/CoreSimulator/Devices"
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 manera de agregar scripts al proceso de compilación en XCode.
También parece que XCode cambia el GUID que usa cada compilación (el directorio donde se ubica mi aplicación cambia entre compilaciones en XCode), por lo que no funcionará el intento de eliminar el mismo directorio todo el tiempo. Si solo está trabajando en una aplicación a la vez, la eliminación de todo el directorio sería una opción.
En XCode, vaya a la opción del menú Ventana, seleccione Dispositivos y luego simplemente puede eliminar los que ya no necesita.
Esto funciona con Xcode 6:
xcrun simctl list | grep -oh ''[A-Z0-9]/{8/}-[A-Z0-9]/{4/}-[A-Z0-9]/{4/}-[A-Z0-9]/{4/}-[A-Z0-9]/{12/}'' | xargs -I{} xcrun simctl erase {}
Para .bash_profile
alias cleansim="xcrun simctl list | grep -oh ''[A-Z0-9]/{8/}-[A-Z0-9]/{4/}-[A-Z0-9]/{4/}-[A-Z0-9]/{4/}-[A-Z0-9]/{12/}'' | xargs -I{} xcrun simctl erase {}"
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 menear, 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 construya y despliegue su aplicación, utilizará el nuevo sqlite db sin problemas y no tendrá que perder el tiempo en el sistema de archivos.
Lo que realmente está tratando de hacer es borrar su base de datos, si ha cambiado el esquema. Una forma de hacerlo, y le 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, entonces deseche la archivo antiguo y use el que está en su paquete.
Encontrar una forma 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 anterior, puede copiar la nueva base de datos sin destruir la anterior, y cargar datos interesantes de la base de datos anterior, en la nueva. A continuación, destruya la base de datos anterior. De esta forma puede conservar las adiciones de su usuario a la base de datos.
para Xcode> = 6
xcrun simctl list | grep -oh ''[A-Z0-9]/{8/}-[A-Z0-9]/{4/}-[A-Z0-9]/{4/}-[A-Z0-9]/{4/}-[A-Z0-9]/{12/}'' | xargs -n1 xcrun simctl erase
puede ser exagerado pero ...
también puede usar el menú y ''Restablecer contenido y configuración ...''
Borrar Xcode Cache;
Comando + Opción + Mayús + K
Comando + Shift + K
(Use ambos porque tienen una funcionalidad diferente)
Borrar contenido de datos derivados;
Barra de menú -> Ventana -> Organizador -> Proyectos -> Seleccione su proyecto
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é de simulador;
Barra de menú -> Simulador de iOS -> Restablecer contenido y configuración
Para Xcode <= 5
Agregué lo siguiente a mi ~/.bash_profile
alias cleansim=''rm -r ~/Library/Application/ Support/iPhone/ Simulator/5.1/Applications/*''
Simplemente destruye todas las aplicaciones en el simulador.