Android

Aplicaciones Android.

iPhone

Aplicaciones iPhone/iPad.

HTML5

Aplicaciones moviles web en HTML5.
 

Extraer la base de datos SQLite de una aplicación desde nuestro equipo Android

miércoles, 4 de septiembre de 2013

Esta es una pregunta que se hacen muchas personas cuando colocan su aplicación en producción y empiezan a tener problemas que no tienen una clara explicación y por lo tanto sería bueno saber que datos tenia el usuario que le fallo la aplicación. 
Por lo tanto hay una solución pero con ciertas condiciones, una de ellas es que el equipo debe estar ruteado, pues tenemos que acceder como super usuario.

Primero debemos ingresar a la aplicacion Terminal, nos muestra la pantalla azul y digitamos 'su', nos mostrara un popup solicitando permisos y cuando ya veamos el cursor como #, indica que ya estamos como super usuarios.


Ahora lo siguiente es navegar hasta llegar donde se encuentra la base de datos de la aplicación, para esto utilizaremos los comando 'ls' para listar el directorio de archivos y 'cd' para abrir o salir de las carpetas. Normalmente esto se encuentra en el root/data/data 



Una vez ubicados en el data podremos listar y ver las carpetas con el nombre del paquete de la aplicación que deseamos recuperar la base de datos. Para este ejemplo vemos que ingresamos en 'com.commonsware.android.constants' y luego ingresamos a la carpeta 'databases'. Una vez dentro de 'databases' pueden ver que esta el archivo 'db' que realmente en un .sqlite, normalmente lo encontraran con .sqlite.
Luego debemos copiar el archivo 'db' a un directorio de facil acceso, por lo tanto lo moveremos a la sdcard, utilizando el comando 'cp' así, cp /sdcard/ 


Si vemos el File Manager de nuestro equipo Android, vemos que ya tenemos el archivo 'db' en la raiz de la sdcard.


Lo siguiente es pasar este archivo a nuestro computador y abrirlo con un visor de Sqlite como el SQLiteManager de Firefox. 




3 comentarios:

Ramiro dijo...

Yo intente eso, pero el comando cp no me funciona.

Unknown dijo...

Saludos Ramiro, muy raro pues es un comando de Linux, y Android esta basado en un kernel Linux, y como puedes ver en el siguiente ejemplo

cp -r /home/hope/files/* /home/hope/backup

In the above example the cp command would copy all files, directories, and subdirectories in the /home/hope/files directory to the /home/hope/backup directory.

Andy dijo...

Te doy la razón pero en algunas cosas poseo una vision diferente
te agradezco igual
Siempre veo tus articulos

Publicar un comentario

Lorem

Please note: Delete this widget in your dashboard. This is just a widget example.

Ipsum

Please note: Delete this widget in your dashboard. This is just a widget example.

Dolor

Please note: Delete this widget in your dashboard. This is just a widget example.