Error al acceder a la tarjeta SD en el Samsung Galaxy Note 3 KitKat (4.4.x)

Desde que Samsung ha actualizado la Nota 3 a 4.4.x, me estoy haciendo de la siguiente excepción al escribir en la tarjeta SD:

java.io.IOException: open failed: EACCES (Permission denied)
at java.io.File.createNewFile(File.java:946)
at java.io.File.createTempFile(File.java:1011)

Mi aplicación tiene el permiso necesario para escribir:

<manifest ...>
    <uses-sdk android:minSdkVersion="10" android:targetSdkVersion="19"/>

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

El código que crea el accidente se parece a esto:

tempFile = File.createTempFile("anMoney", null, destinationFile.getParentFile());

destionatioFile puntos de un archivo en la Tarjeta SD, por lo que su padre archivo de la carpeta.

El error parece estar sucediendo en la Nota 3 dispositivos y otros de Samsung o no dispositivos de Samsung están trabajando bien. Así que esto huele a una Nota de 3 de error, pero ¿hay alguna solución podría quizás hacer?

  • Por favor, mostrar el código fuente que genera este error.
  • He actualizado el post con la llamada de los accidentes.
  • Tenga en cuenta que WRITE_EXTERNAL_STORAGE tiene nada que ver con ninguna «tarjeta SD». De almacenamiento externo no ha sido implementado como un extraíbles bits de almacenamiento en la mayoría de los dispositivos fabricados desde el año 2011. Así, cuando dice que «destionatioFile puntos de un archivo en la Tarjeta SD, por lo que su padre archivo de la carpeta», ¿significa literalmente algunas de almacenamiento extraíble, o ¿te refieres a algo en oficial de almacenamiento externo?
  • Este es el real de la tarjeta SD. Los usuarios tienen la opción de escribir en un camino, y el error que está sucediendo para aquellos que escriba la ruta de acceso a la real SD.
  • Este Samsung es la respuesta: :Este error puede ocurrir si su tarjeta sd está todavía bloqueado como un dispositivo usb. asegúrese de que usted no está utilizando su teléfono como un dispositivo de almacenamiento usb. desconecte el dispositivo de la PC y vuelve a intentarlo. también puede que tenga que agregar el siguiente permiso : <uses-permission android:name=»android.el permiso.MOUNT_UNMOUNT_FILESYSTEMS» />
  • Nunca he oído hablar de este permiso.

InformationsquelleAutor Tom anMoney | 2014-02-03

4 Kommentare

  1. 3

    Es un error que parece estar confinado a unos pocos modelos de Samsung. es decir, la Nota 3 (N9005).

    La media_rw permiso falta en /system/etc/security/permissions.xml

    <permission name="android.permission.WRITE_EXTERNAL_STORAGE" >
    <group gid="sdcard_r" />
    <group gid="sdcard_rw" />
    <group gid="media_rw" />
    </permission>

    Tendrá que estar arraigada solucionarlo

    • Gracias. ¿Dónde se encuentra esta información, si puedo preguntar?
    • El «bloqueado» tarjeta SD externa, sólo ocurrió después de la aplicación de KitKat para mi Note 3. Supuse que era permisos de una cosa, ya sea a nivel de archivo o de permisos de android. Un par de búsquedas en la web con Google pronto encontró un patrón y me fui por delante y trató de la solución anterior (después de Enraizamiento, etc). Después de un reinicio, todo había vuelto a la normalidad de nuevo. Por CIERTO, en xda-developers forum es un gran recurso para android dev cosas.
    • Yo no creo que este sea el caso. Samsung es sólo el único con tarjetas SD y KitKat actualizaciones ahora.
    • Sólo rápido de la información, en mi dispositivo con la ROM personalizada, este directorio es \system\etc\permisos\
    • Hay alguna API o comando para comprobar si este permiso pertenece a la «media_rw» grupo o no? O, más precisamente, cualquier forma de comprobar si la aplicación puede escribir a (en cualquier lugar ) a la tarjeta sd? También, ¿cuál es el «sdcard_rw» para? hace lo mismo?
  2. 1

    Esta podría ser la intención de conducta que se basa en una interpretación estricta de Android de almacenamiento externo especificaciones:

    El permiso WRITE_EXTERNAL_STORAGE sólo debe conceder acceso de escritura a
    el principal de almacenamiento externo en un dispositivo. Las aplicaciones no se debe permitir que
    escribir para secundaria dispositivos de almacenamiento externos, excepto en sus
    paquete de directorios específicos de lo permitido por la sintetizado permisos.

    Si permite a los usuarios introducir una ruta en sí es probable que seleccione algo fuera de su paquete de la aplicación directorio específico. En este caso el archivo de escritura/creación/eliminación de fallará.

  3. 1

    Hay muchos artículos hablando de este tema, como Google y Samsung ahora no permitir que aplicaciones de terceros para escribir en la tarjeta sd, a menos que escribir en su ruta designada .

    Aquí hay algunos enlaces al respecto:

    • Cuando he publicado esta pregunta hace dos meses, no había muchos artículos hablando de esto. Pero gracias.
    • ok, pero ¿por qué la downvote?
    • Honestamente, porque la hizo sonar como yo no hice mi tarea antes de preguntar.
    • ¿Qué debo hacer para solucionarlo? No me refiero a hacer que suene como que. Yo sólo quería referirse a ellos…
  4. 0

    Acceso de almacenamiento extraíble nunca fue oficialmente compatible con el SDK de Android anteriores a Android 4.4, aunque muchos desarrolladores elegido ignorar que.

    Android 4.4 añade un apoyo limitado para que las aplicaciones tengan acceso a medios de almacenamiento extraíbles, a través de métodos como la getExternalFilesDirs() (nótese el plural). Al mismo tiempo, hay informes de que algunas de las alternativas que los desarrolladores trabajar con almacenamiento extraíble ahora bloqueado. Ya que yo no trabajo con almacenamiento extraíble, no he intentado reproducir estos resultados.

    • Bueno, no está seguro de cuál es el punto de tener soy de la tarjeta SD si las aplicaciones no se puede escribir en él….. También, parece ser que esto solo efecto de la Nota 3. El Galaxy S4 está trabajando bien.
    • seguro de cuál es el punto de tener soy de la tarjeta SD si las aplicaciones no se puede escribir en él» — los fabricantes de dispositivos tienen derechos a trabajar con almacenamiento extraíble. Y, mientras los fabricantes de organizar los medios de almacenamiento extraíbles para ser indexados por los medios de comunicación escáner para MediaStore, muchas de las aplicaciones no necesitan el acceso directo a los medios de almacenamiento extraíbles.

Kommentieren Sie den Artikel

Bitte geben Sie Ihren Kommentar ein!
Bitte geben Sie hier Ihren Namen ein

Pruebas en línea