Cómo eliminar la base de datos SQLite de Android mediante programación

Quisiera eliminar el archivo de la base de datos del Android file system programatically? ¿Puedo tener un script de shell lanzar adb que a su vez ejecuta un script de shell en el espacio de Android para hacer la eliminación de la base de datos? ¿Puedo hacer esto desde un caso de prueba de JUnit (con una llamada al system() )?

¿Cómo puedo eliminar una base de datos completa en Android? Necesito hacer que todo se vaya para poder probar la creación de la base de datos. Puedo dejar mesas, pero eso no es suficiente. Esto está en el emulador, no en un teléfono.

Una vez que tenga su Contexto y conozca el nombre de la base de datos, utilice:

 context.deleteDatabase(DATABASE_NAME); 

Cuando se ejecuta esta línea, se debe eliminar la base de datos.

Es fácil escribir desde tu shell:

 adb shell cd /data/data cd <your.application.java.package> cd databases su rm <your db name>.db 

Tratar:

 this.deleteDatabase(path); 

o

 context.deleteDatabase(path); 

El método estático SQLiteDatabase.deleteDatabase (archivo de archivo) se agregó en la API 16. Si desea escribir aplicaciones que admitan dispositivos antiguos, ¿cómo lo hace?

He intentado: file.delete ();

Pero se ensucia SQLiteOpenHelper.

Gracias.

¡NO IMPORTA! Más tarde me di cuenta de que está utilizando Contexto .deleteDatabase (). El contexto uno funciona muy bien y elimina la revista también. Funciona para mi.

Además, encontré que necesitaba llamar a SQLiteOpenHelp.close () antes de hacer la eliminación, para que luego pudiera usar LoaderManager para recrearlo.

También de Eclipse puede utilizar DDMS lo que lo hace realmente fácil.

Sólo asegúrese de que su emulador se está ejecutando, y luego cambiar a la perspectiva DDMS en Eclipse. Tendrás acceso completo al Explorador de archivos, que te permitirá entrar y borrar fácilmente toda la base de datos.

Context.deleteDatabase (DATABASE_NAME); Borrará la base de datos sólo si todas las conexiones están cerradas. Si está manteniendo una instancia singleton para manejar su ayudante de base de datos – es fácil cerrar la conexión abierta.

Incase el databasehelper se utiliza en lugar múltiple instantiating directamente, el deleteDatabase + killProcess hará el trabajo incluso si algunas conexiones están abiertas. Esto se puede utilizar si el escenario de la aplicación no tiene ningún problema al reiniciar la aplicación.

Desde el Administrador de aplicaciones, puede eliminar toda la aplicación con datos. O simplemente datos por sí mismo. Esto incluye base de datos.

  1. Vaya a Configuración. Puede acceder al menú de configuración en el menú de aplicaciones o, en la mayoría de los teléfonos, tirando del cajón de notificaciones y pulsando un botón.

  2. Seleccione el submenú Aplicaciones. En algunos teléfonos, este menú tendrá un nombre un poco diferente, como Application Manager.

  3. Desliza el dedo hacia la derecha hasta la lista Todas las aplicaciones. Ignora las listas de aplicaciones en ejecución y descargadas. Desea la lista Todas las aplicaciones.

  4. Selecciona la aplicación que deseas inhabilitar. Aparece una pantalla de propiedades con un botón para Parar de fuerza en la parte superior izquierda y otro para Desactivar o Desinstalar actualizaciones en el lado superior derecho.

  5. Borrar datos.

Puede ir al emulador> Configuración> Aplicación>. Haga clic en la aplicación de la que desea eliminar la base de datos y haga clic en> Borrar datos. .

  • Eliminación de fila en SQLite en Android
  • Android: SQLite, cursor.moveToNext () siempre devuelve false
  • Cómo utilizar la cláusula LIKE en la función de consulta
  • Android Sqlite SQLiteDiskIOException: error de E / S de disco (código 1290) SQLITE_IOERR_DIR_FSYNC
  • Android SQCipher ¿Necesito cerrar la base de datos?
  • Acceso a la aplicación de Android Lite para Android
  • Error al azar de SQLiteConnectionPool en Android. ¿Como evitar?
  • Extraer una base de datos del emulador genymotion a un disco local
  • Preferencias compartidas vs base de datos
  • ¿Es el contexto de la aplicación siempre el mismo sin importar la clase?
  • No se ha podido abrir la base de datos de georreferencias de vista web de Android
  • FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.