Ver Mensaje Individual
  #6 (permalink)  
Antiguo 17/11/2011, 12:21
Avatar de jahepi
jahepi
Colaborador
 
Fecha de Ingreso: diciembre-2004
Ubicación: Querétaro
Mensajes: 1.124
Antigüedad: 20 años
Puntos: 43
Respuesta: Problema con SQLiteOpenHelper

Hola letni !

Cita:
No tenía el Eclipse abierto y el emulador, por tanto, tampoco, no sabía que era necesario.
He vuelto a repetir lo pasos con el Eclipse abierto y el emulador corriendo, y ahora ya me ha funcionado el adb shell, pero no hay ninguna carpeta llamada databases dentro de data/data/{paquete de mi proyecto}/
Sólo hay una carpeta llamada lib.
Si no está la carpeta databases entonces no se ha creado, así no podrás utilizar el comando sqlite3 dentro del shell.

Cita:
No, no sale que se invocó al método onCreate().
Pero entonces, si ya se ha creado en algún momento, ¿no debería llamarse el método onUpgrade()?

El onUpgrade(), ¿sólo se llama si cambio el valor de la constante DB_VERSION?
De hecho la primera vez siempre se llama al método onCreate se registra la versión de la base de datos que tienes en la constante, onUpgrade se llama si cambias la versión de la base de datos, que es cambiando tu constante DB_VERSION, siempre y cuando no sea diferente no se invocará.

Cita:
Voy a Window --> Show view --> Project Explorer en el Eclipse y se me abre, en la parte de la izquierda, una vista con un árbol de navegación con todos mis proyectos, es una vista muy parecida a la de Package Explorer. Navego por el árbol de mi proyecto pero no veo ninguna carpeta llamada data.
Me equivoqué es en Window -> Show View -> Other, vas al apartado de android y añades el File Explorer, pero vas a encontrar lo mismo que viste desde el shell, sólo vas a encontrar la carpeta lib dentro de tu proyecto.

Si no se ha creado la DB, debería llamarse el método onCreate, lo que se me ocurre es que agregues 3 break points y veas línea por línea que es lo que está pasando, coloca uno en el constructor, otro en el método onCreate y otro en el onUpgrade, en el onUpgrade trata cambiando la versión para que sea invocado, ve paso a paso con el ícono step over en modo de depuración.

Un saludoo y suerte !
__________________
Una contraseña es como la ropa interior. No deberías dejarlas afuera a la vista de otras personas, deberías cambiarla regularmente, y ni se te ocurra prestarla a extraños.