tutorial studio sqlitedatabase manage how español descargar dbhelper create consultas android sqlite android-studio

studio - La carpeta "datos" de Android Device Monitor está vacía



sqlite android studio 2018 (8)

He probado la creación, inserción y recuperación de datos en mis aplicaciones db, y sé que funciona mediante el uso de declaraciones de registro.

Sin embargo, deseo agilizar las pruebas y usar el Android Device Monitor. Sin embargo, aunque el archivo db existe y los datos están almacenados, al acceder a continuación, la carpeta de data está vacía:

Por qué sería este el caso? ¿Cómo se puede configurar para mostrar el archivo db y los contenidos?


Resolviendo el problema usando un emulador

La carpeta /data pueden estar vacíos porque te faltan los permisos adecuados. Para resolverlo, tuve que ejecutar los siguientes comandos.

adb shell su

Esos comandos inician un shell en el emulador y le otorgan derechos de root. El comando adb se encuentra en la carpeta platform-tools del SDK de Android, normalmente instalado en ~/Library/Android/sdk/ en MacOS.

chmod -R 777 /data

Modifique los permisos de la carpeta (y subcarpetas recursivamente) /data para que aparezcan en la herramienta A ndroid Device Monitor .

adb root

Finalmente, este comando reinicia adb como root. Tenga cuidado, solo funciona en construcciones de desarrollo (típicamente construcciones de emuladores).

Después, puede ver el contenido de la carpeta /data y transferir los datos ubicados en. También puede hacerlo en la consola, usando adb pull <remote> <locale> , como por ejemplo:

adb pull /data/data/<app name>/databases/<database> .


Además de las respuestas de @Steven K: si desea obtener acceso a sus datos sin tener que rootear su dispositivo real, necesita ejecutar su aplicación en un emulador con API 23 (o inferior). Es un problema conocido que las API superiores a 23 pueden causar problemas al implementar Android Device Monitor.


En cmd GoTo:

C:/Users/UserName/android-sdks/platform-tools

Ejecutar:

adb root

Hecho


Hay dos formas de navegar por la carpeta de datos del dispositivo (datos / datos).

  1. Necesita tener un teléfono con acceso raíz para explorar la carpeta de datos usando ADM (Android Device Monitor).

Ubicación de ADM - (YOUR_SDK_PATH / Android / sdk / tools)

  1. Necesita ejecutar ADB en modo raíz, haga esto ejecutando: adb root

Si solo quieres ver tus Tablas y DB, entonces la mejor manera es usar Stetho . Se desarrolló una herramienta genial para todos los desarrolladores de Android que utilizan SQLite buit de Facobook developed .

Steps to use the tool

  1. Añádalo a continuación en el archivo gradle de su aplicación (Módulo: aplicación)

''compilar'' com.facebook.stetho: stetho: 1.4.2 ''

  1. Agregue líneas de código debajo en su método Activity onCreate ()

@Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); Stetho.initializeWithDefaults(this); setContentView(R.layout.activity_main); }

Ahora, crea tu aplicación. Cuando la aplicación se está ejecutando, puedes navegar por la base de datos de tu aplicación abriendo Chrome en la url:

chrome://inspect/#devices

Las capturas de pantalla de los mismos son las siguientes_

ChromeInspact

Tu DB

Espero que esto ayude a todos! :)


No está vacío ... simplemente no tienes permiso para ver esa carpeta en un dispositivo.

Pruébalo en un simulador y te funcionará, ya que tienes acceso de root.


Puede ser más fácil almacenar la base de datos en una carpeta pública durante el desarrollo.

O puedes ver esta publicación:

¿Cómo acceder a la carpeta de datos / datos en un dispositivo Android?


Si alguien está teniendo el problema indicado, siga los pasos a continuación en la ventana del terminal:

  1. Navegue a / Users / Username / Library / Android / sdk / platform-tools
  2. Ejecutar ./adb root

Eso es. Problema resuelto.


Tuve el mismo problema con API_25 , no funcionó para mí.

Configure un API_23 emulator , funcionará en API_23 .