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

Resuelto Naveen Prince P asked hace 54 años • 18 respuestas

Estoy desarrollando una aplicación y sé que mi base de datos *.dbaparecerá endata/data/com.****.***

Puedo acceder a este archivo desde AVD en Eclipse con la ayuda de sqlite manager

Pero no puedo acceder a este archivo en mi teléfono Android.
Lo busqué en Google y dice que necesito rootear mi teléfono para hacerlo, pero no quiero hacerlo.

¿Cómo puedo acceder a mi data/data/.....directorio en mi teléfono Android " sin rootearlo? "?

¿ Puedo cambiar los permisos de usuario para el directorio data/data.....sin rootearlo?

Naveen Prince P avatar Jan 01 '70 08:01 Naveen Prince P
Aceptado

Acceder a los archivos directamente en tu teléfono es difícil, pero es posible que puedas copiarlos a tu computadora, donde podrás hacer lo que quieras con ellos. Sin rootear tienes 2 opciones:

  1. Si la aplicación se puede depurar, puede usar el run-ascomando en adb shell

     adb shell
     run-as com.your.packagename 
     cp /data/data/com.your.packagename/
    
  2. Alternativamente, puedes utilizar la función de copia de seguridad de Android.

     adb backup -noapk com.your.packagename
    

    Ahora se le pedirá que "desbloquee su dispositivo y confirme la operación de copia de seguridad". Es mejor NO proporcionar una contraseña, de lo contrario será más difícil leer los datos. Simplemente haga clic en 'hacer copia de seguridad de mis datos'. El archivo 'backup.ab' resultante en su computadora contiene todos los datos de la aplicación en formato de copia de seguridad de Android. Básicamente es un archivo tar comprimido.

Esta página explica cómo puede utilizar el comando zlib de OpenSSL para descomprimirlo:

dd if=mybackup.ab bs=24 skip=1|openssl zlib -d > mybackup.tar

Si el openssl zlibcomando no funciona en su sistema, existen otras opciones .

Puede utilizar el adb restore backup.dbcomando para restaurar la copia de seguridad.

THelper avatar Jul 26 '2013 08:07 THelper

Si está utilizando Android Studio 3.0 o una versión posterior, siga estos pasos.

  1. Haga clic en Ver > Ventanas de herramientas > Explorador de archivos de dispositivos .
  2. Expanda los nodos /data/data/[nombre-paquete] .

Sólo puede expandir paquetes que se ejecutan en modo de depuración en un dispositivo no rooteado.

Pasos seguidos en Android Studio 3.0

Shahidul avatar May 20 '2017 18:05 Shahidul

También puedes intentar recuperar la base de datos usando la aplicación Root Explorer. Y si eso no funciona, puedes probar esto:

  1. abrir cmd
  2. Cambie su directorio y vaya a 'Herramientas de plataforma'
  3. Tipo ' adb shell'
  4. su
  5. Presione 'Permitir' en el dispositivo
  6. chmod 777 /data /data/data /data/data/com.application.package /data/data/com.application.package/*
  7. Abra la vista DDMS en Eclipse y desde allí abra 'FileExplorer' para obtener el archivo deseado

Después de esto, debería poder explorar los archivos en el dispositivo rooteado.

Sheraz Ahmad Khilji avatar Oct 22 '2012 07:10 Sheraz Ahmad Khilji

Para hacer cualquiera de las cosas anteriores (es decir, acceder a carpetas protegidas desde el propio teléfono), aún necesita root. (Eso incluye cambiar los permisos de montaje en la carpeta /data y acceder a ella)

Sin root, no es posible acceder /datadirectamente para leer, excepto desde su aplicación a través del código. Por lo tanto, podría intentar copiar ese archivo en la tarjeta SD o en algún lugar accesible y luego debería poder acceder a él normalmente.

El rooteo no anulará la garantía si tiene un dispositivo de desarrollador. Lo siento, no hay otra manera que yo sepa.

Anirudh Ramanathan avatar Oct 22 '2012 07:10 Anirudh Ramanathan
  1. Abra su símbolo del sistema
  2. Cambie el directorio a E:\Android\adt-bundle-windows-x86_64-20140702\adt-bundle-windows-x86_64-20140702\sdk\platform-tools
  3. Ingrese los siguientes comandos
  4. adb -d shell
  5. run-as com.your.packagename cat databases/database.db > /sdcard/database.db
  6. Cambie el directorio para cd /sdcardasegurarse de database.dbque esté allí.
  7. adb pull /sdcard/database.dbo simplemente puede copiar la base de datos.db desde el dispositivo.
Isura Amarasinghe avatar Sep 11 '2014 10:09 Isura Amarasinghe