Reemplazar la base de datos SQLite de aplicaciones mediante ADB

Estoy intentando substituir la base de datos de mi app con ADB , en un dispositivo arraigado.

Sigo estos pasos:

  1. $adb shell
  2. run-as my.app.package
  3. cd databases
  4. rm my_database.db
  5. chmod 777 .
  6. exit
  7. exit
  8. $adb push my_database.db /data/data/my.app.package/databases/my_database.db

La nueva base de datos se ha copiado correctamente.

Pero cuando lanzo mi aplicación de nuevo, parece que la nueva base de datos se elimina y se crea de nuevo. ¿Por qué?

Gracias.

No sé exactamente por qué, pero ahora está funcionando. He seguido estos pasos:

  1. Abrir aplicación (en mi aplicación, la base de datos se crea en la actividad principal)
  2. Siga los pasos mencionados en la pregunta con la aplicación abierta
  3. Cerrar la aplicación y quitarla de la memoria
  4. Reabrir la aplicación

Ambas versiones de bases de datos son las mismas y no tengo código en el método onUpgrade .

  • Base de datos en el estudio android
  • IllegalArgumentException: el valor de enlace en el índice 1 es nulo
  • SQLCipher para Android getReadableDatabase () Sobrehéroe
  • Cómo comprobar si ya existe un valor en la base de datos en Android
  • Consulta de eliminación de Android
  • Agregar nueva tabla a la base de datos después de que la aplicación se haya ejecutado una vez
  • GUID de Android: clave principal
  • Android Seleccionar fila por Id en Sqlite?
  • Android: Guardar imágenes en la base de datos Sqlite
  • Error No se puede realizar esta operación porque se ha cerrado el grupo de conexiones
  • Cómo eliminar las viejas filas de la base de datos sqlite en android?
  • FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.