2010-10-26 16 views
10

He creado una aplicación que utiliza datos básicos. ¿Hay alguna manera de ver el sqlite db en el simulador? ¿Una herramienta tal vez que permite consultar el sqlite db en el simulador? ¿Como un navegador de datos?Simulador de datos del núcleo del iPhone

¿Hay alguna manera de navegar por el simulador de iphone a la ubicación de sqlite db?

Respuesta

11

Xcode 5

que acaba de descargar un ensayo de Base y fue capaz de señalar que en la base de datos sql del simulador a través de:

/Macintosh HD/Users/"nombre de usuario"/Library/Application Support Soporte/iPhone Simulator/"versión actual de desarrollo iOS"/Aplicaciones/

Los nombres de las carpetas de las aplicaciones no se pueden leer, pero si hace clic en la carpeta podrá ver los contenidos con nombres conocidos.

Xcode 6+

Esto fue cambiado en Xcode 6, y ahora se encuentra en la base de datos ~/Library/Developer/CoreSimulator/Devices/<device-id>/data/Containers/Data/Appl‌​action donde sí se puede encontrar dentro del directorio de documentos <app-id>/Documents/<name>.sqlite

+4

Esto no es correcto a partir de XCode 6+. Mire en '~/Library/Developer/CoreSimulator/Devices//data/Containers/Data/Application' – djbp

+0

¿Alguien sabe cómo obtener dentro de xCode? – WINSergey

1

Si usted tiene la libre sqlite3 instalado, puede hacerlo en la línea de comandos haciendo:

/Users/<user>/Library/Application\ Support/iPhone\ Simulator/<sim_version>/Applications/<apphash>/Documents/<yourfile> 

manera más fácil de ver qué hash debe mirar en:

ls -lt /Users/<user>/Library/Application\ Support/iPhone\ Simulator/<sim_version>/Applications/ 

Puede Ejecute .tables en el indicador para ver qué tablas hay y .schema <tablename> para ver sus columnas.

0

estoy bastante contento con SQLite Manger para Firefox. Complemento gratuito.

14

Con Xcode 6, el directorio base simulador se puede encontrar aquí:

~/Library/Developer/CoreSimulator/Devices/<device-id>/data/Containers/Data/Application 

Luego, la propia base de datos se pueden encontrar en el directorio de documentos:

<app-id>/Documents/<name>.sqlite 

La base de datos se puede acceder usando sqlite3 en la línea de comando.

+1

La respuesta actualmente aceptada ya no es correcta. ¡Por favor, ahorre sus votos para conseguir este a la cima! – dave

0

Este es un un antiguo puesto bastante, sin embargo yo estaba buscando otra cosa y yo aterrizó aquí, mis 2 centavos:

En respuesta a WINSergey: (1) La forma más fácil de recuperar su ID de dispositivo y todo el camino es a imprimir:

NSLog(@"app dir: %@",[[[NSFileManager defaultManager] 
        URLsForDirectory:NSDocumentDirectory 
        inDomains:NSUserDomainMask] lastObject]); 

entonces usted verá la salida de la zona de depuración o abrir el registro del sistema del simulador.

(2) Además, para conocer la identificación del dispositivo desde el simulador: XCode> WIndow> Devices>> muestra el identificador en el lado derecho.

También estoy usando SQLiteStudio, es de código abierto y funciona bien.

Cuestiones relacionadas