Mac, Android Studio, Emulador, base de datos SQLite – en realidad encontrar el directorio?

Android Studio, Mac. Toda la última versión. Di que haces esto …

SQLiteDatabase db; db = yourAppContext.openOrCreateDatabase("db.sqlite3", Context.MODE_PRIVATE, null); 

Gracias a ESTE INMEDIATO ENLACE:

http://www.c-sharpcorner.com/UploadFile/e14021/know-where-database-is-stored-in-android-studio/

es posible encontrar exactamente el directorio que contiene su base de datos SQLite3 real en el emulador a medida que se ejecuta:

introduzca la descripción de la imagen aquí

Buena cosa.

A continuación, puede hacer clic en el botón de extracción, y tirar de ese archivo para decir su escritorio en la Mac. Increíble.

Pero.

¿Cómo puedes encontrar literalmente esa carpeta ("bases de datos" en el ejemplo), en tu Mac?

es decir, usando un terminal de shell normal, quiero "cd" a allí.

¿Dónde diablos es esa carpeta, en la estructura ordinaria del archivo nix del ordenador Mac anfitrión?

adb (Android Debug Bridge) es necesario para acceder al sistema de archivos de un dispositivo emulador a través de la línea de comandos. Si todavía no lo tienes instalado, puedes descargarlo aquí .

Una vez instalado, es sólo cuestión de usar algunos comandos para ver / acceder a los archivos:

  1. Abra Terminal.app .
  2. Ejecutar adb devices (esto debería enumerar los dispositivos emuladores actuales).
  3. Conéctese al dispositivo emulador con adb shell .
  4. Cambie el directorio cd a la carpeta donde se encuentran las bases de datos de aplicaciones.
  5. Escriba ls para ver qué archivos de base de datos están presentes.

En Terminal se vería algo como esto :

Enumere los dispositivos emuladores:

 $ adb devices List of devices attached emulator-5554 device 

Conectarse al dispositivo con adb shell :

 $ adb -s emulator-5554 shell 

Cambie el directorio ( cd ) en su localización de la base de datos de SQLite3 (el nombre del paquete es generalmente com... ):

 adb shell $ cd /data/data/<your app package name>/databases/ 

Enumere los archivos en el directorio de databases :

 adb shell $ ls db.sqlite3 

Eso es realmente lo básico! También es posible push/pull para copiar archivos desde el emulador (remoto) a su sistema de archivos (local):

 adb pull /data/data/com.yourpackagename.app/databases/db.sqlite3 /local/save/path 

Más información:

  • Referencia de la línea de comandos de Android Studio
  • Línea de comandos de SQL Studio3
  • Android Studio SDK Herramientas de plataforma

o puede extraer bases de datos utilizando este comando

adb pull /data/data/com.application/databases/ por ejemplo adb pull /data/data/com.zameen.propforce/databases/

en segundo lugar esa carpeta no es accesible a menos que su dispositivo esté enraizado o que esté usando el emulador

si el dispositivo está enraizado. obtendrá acceso de usuario super por adb su comando, entonces usted puede ir a este directorio

  • ¿Por qué Android Studio muestra documentos rápidos para literales de cadenas?
  • WebView.addJavascriptInterface no debe ser llamado
  • Android Studio 2.1 Error al convertir bytecode a dex
  • Android FragmentTabHost
  • Cómo depurar en Android Studio utilizando adb over WiFi
  • Appcompat / añadir una biblioteca con el estudio de Android
  • Altos picos de retraso de Android Studio al editar archivos de diseño .xml
  • La aplicación Android no se carga en Emulator después de la actualización de Android Studio 2.3
  • ¿Cuál es la diferencia entre android: uses-permission y uses-permission?
  • 'SourceSets' no se puede aplicar a la advertencia de 'groovy.lang.closure' en Android Studio
  • La vista Web de Android da el mensaje net :: ERR_CACHE_MISS
  • FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.