miércoles, 31 de julio de 2013

Mini PC Android. Escribir en USB (Pen drive)

Hola

Si tenéis algún problema con una aplicación Android para escribir ficheros en un dispositivo conectado por USB (pen drive, disk memory, hard drive, etc..) o para descargar ficheros directamente sobre un dispositivo conectado por USB entonces lo mas seguro es que sea por un problema de permisos.

Los permisos para escribir ficheros en un USB se declaran en el fichero /system/etc/permissions/platform.xml

Localizar la etiqueta donde pone:

<permission name="WRITE_EXTERNAL_STORAGE" > 
    <group gid="sdcard_rw" />  <-- PERMISOS PARA ESCRIBIR EN DISCO DURO
</permission> 

y añade de la siguiente manera

<permission name="WRITE_EXTERNAL_STORAGE" > 
           <group gid="sdcard_rw" /> 
           <group gid="media_rw" />   <-- PERMISOS PARA ESCRIBIR EN USB
</permission> 


Si no existe WRITE_EXTERNAL_STORAGE entonces crea la etiqueta entera.

Reinicia el sistema operativo y ya debería dejarte escribir en un USB.

Para editar el fichero platform.xml solo necesitas un edictor de texto.

Para salvar los cambios necesitas entrar como root. Si tienes problemas para esto puedes usar los siguientes pasos:

1 Bajate del Play Store un emulador de terminal.
2 Ejecutalo y entra como root con el comando "su":

terminal$> su
terminal#>                       <-- Como ves has pasado de $ a #, eso es que ya eres root

3 Ahora salva el fichero platform.xml por si hay algun error y hay que volver a la version anterior

terminal#> mv /system/etc/permissions/platform.xml /system/etc/permissions/platform.xml.ori

4 Copia el fichero platform.xml con la modificación en la etiqueta WRITE_EXTERNAL_STORAGE en su lugar (supongamos que lo editaste en el directorio /sdcard/platform.xml)

terminal#> mv /sdcard/platform.xml /system/etc/permissions/platform.xml

Espero que esto os sirva.

Un saludo