¿Cómo cambiar los permisos de la SDCard en AVD?

¿Cómo cambiar los permisos de la SDCard en AVD?

AVD Android

Utilizando nuestro servicio de consultoría gratuita Jesús nos hizo la siguiente consulta:

Hola muy buenas,

 En primer lugar enhorabuena por la página.
 Me gustaría haceros una pregunta acerca de Android: tengo un emulador creado, con una sdcard, en la cual he creado una carpeta dentro (utilizando la vista File Explorer del eclipse).

 Mi pregunta es: ¿cómo puedo cambiar los permisos para todos los ficheros y directorios que añada a esa carpeta? el problema es que aunque los añada,no tiene los permisos que debería ----rwxr-x y yo quiero que sea de lectura y escritura para el usuario, ya que sino cuando ejecuto la aplicación el emulador no puede leerlo. En cambio desde mi terminal real sí, puesto que tiene los permisos de lectura escritura.
 ¿Cómo soluciono este problema?

 Muchas gracias por todo
Al crear un nuevo Android Virtual Device (AVD) para probar el funcionamiento de tu aplicación en el simulador de Android, descubres que al tratar de manipular archivos dentro de una partición, como por ejemplo la SDCard, obtienes un “Permission Denied” si la partición es de sólo lectura.Si dentro de Eclipse, usando la perspectiva DDMS, pinchamos sobre la pestaña File Explorer, vemos los permisos que tiene cada directorio de nuestro dispositivo virtual en la columna Permissions. Si queremos cambiar alguno de ellos para que deje de ser read-only y pase a ser read-write veremos que no nos deja. Sin embargo, en el dispositivo real, al ejecutar la aplicación, este directorio si es de escritura y lectura porque se tienen los permisos adecuados. Bien, la solución no debemos de buscarla en el Eclipse, sino en la consola adb.

  1. Lanza tu AVD creado a través del Android Virtual Device Manager y pulsa Start.
  2. Una vez que haya arrancado, abre un terminal, en mi caso como uso Windows, ejecuto cmd.
  3. Hay que asegurarse de que podemos trabajar con privilegios de super usuario. Escribe:
    adb root

    Si la respuesta es “adbd is already running as root” es que ya los tenemos.
    Si nos dice “unable to run as root on production builds”, tendremos que utilizar el comando “su” más adelante.

  4. Escribe:
     adb shell

    Asegúrate de que aparece una #, eso es que ya estamos ejecutando la consola adb.

  5. Si no eres super usuario, escribe:
    su

    Si no, no hace falta que pongas nada.

  6. Escribe:
    mount -o remount rw /sdcard

Con esto cambias los permisos de la carpeta SDCard. Puedes cambiar el directorio /sdcard por otro que necesites.

Reinicia tu AVD. En la ventana de File Explorer verás como cambian los permisos para la carpeta SDCard.

ANTES:

d--------

DESPUÉS:

d---rwxr-x

¡Esperamos que te haya sido de ayuda! Si aún persiste el problema o tienes alguna duda más, no dudes en hacer uso de los comentarios para notificarlo.

¡Saludos!

Previous ¿Es ilegal compartir enlaces de música no registrada?
Next [comic] "Autoimagen positiva". Así te ve tu novia cuando programas

About author

Rafa M.
Rafa M. 51 posts

Ingeniero de Telecomunicación, apasionado de la Seguridad Informática.

You might also like

Google 1Comments

Navidades sin Nexus 4

Pésima gestión de Google en la distribución de hardware. La Nexus 4 está agotada y la fecha de vuelta es todavía una incógnita

¿El fin de WhatsApp?

Con el auge de los smartphones han surgido aplicaciones tales como WhatsApp, que sólo con conectarse a Internet (ya sea a través de wifi o red de datos de nuestro

El problema de desplegar redes ad hoc en Android OS: ¿rootear el dispositivo?

El estándar Wi-Fi (IEEE 802.11) puede operar básicamente en dos modos: Infraestructura (o “managed”), en el que los clientes se conectan a un punto de acceso o router. Ad-hoc, también llamado

2 Comentarios

  1. Sergio Cerda
    diciembre 16, 00:20 Reply

    Amigo, las configuraciones que me diste son para simular la tarjeta interna.. más no la externa.. es así?

  2. Jesús
    octubre 22, 14:48 Reply

    Muchas gracias,

    Me función tal cuál quería!

    Un saludo

Deja un comentario