2012-02-19 23 views
11

He añadido esta línea en el AndroidManifest.xml:no puede escribir en sdcard en el emulador de Android

<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" /> 

Sin embargo, cuando corro código para escribir a la tarjeta sd, me sale este error:

02-19 13:24:46.760: E/CameraTest(598): /mnt/sdcard/image.jpg: open failed: EACCES (Permission denied) 

¿Cómo resuelvo este problema?

EDIT: Estoy usando el emulador de Android con SDCard agregado.

EDIT-2: Sé cuál es el problema ahora: he llamado a la función Environment.getExternalStorageState() y me "quitan". Cualquiera sabe cómo solucionar esto y hacer que el estado MEDIA_MOUNTED

¡Gracias!

+0

¿Usted ha montado la tarjeta SD? – kosa

+0

verificación [esta] [1] y [esta] [2] [1]: http://stackoverflow.com/questions/8854359/android-open-failed-eacces-permission-denied [2]: http://stackoverflow.com/questions/9334090/failed-to-save-image-to-sdcard – George

+0

@thinksteep: sí, se agrega la tarjeta sd. Estoy usando el emulador por cierto. –

Respuesta

7

Ok Así que he resuelto esto. ¡Fue un problema que tuve que enfrentar al montar la tarjeta sd y que Android no permite espacios en el camino!

Aquí es un buen procedimiento a seguir (si también se utiliza Eclipse): http://www.brighthub.com/mobile/google-android/articles/33240.aspx

NOTA: en caso de que el camino tiene un espacio en ella, mueva el archivo de imagen sdcard a otro lugar y luego ejecute el comando emulador con la tarjeta sd y todo debería funcionar bien!

3

Podría ser más simple que eso. Me perdí para configurar el emulador para que tuviera una tarjeta SD. Una vez que agregué una tarjeta SD en el dispositivo, todo salió bien.

Saludos, Jonas

1

que borran la memoria caché para cualquier aplicación que estaba usando para tratar de compartir la imagen (Pixlr) y estaba bien.

2

Me di cuenta de que este problema puede ocurrir si está utilizando un emulador de Android 6.0, Android agregó un nuevo modelo de permiso para (Marshmallow).

truco: Si el idioma de la versión 22 o por debajo, su solicitud será solicitar todos los permisos durante la instalación así como sería en cualquier dispositivo que ejecuta un sistema operativo por debajo de la melcocha

Cuestiones relacionadas