Android – Verificar si el almacenamiento externo esta disponible

By | 06/10/2016

Nuestro proyecto puede requerir acceder a la memoria externa ya sea para leer o guardar archivos. Por ejemplo una tarjeta de memoria extraíble (tarjeta SD) o una memoria interna (no extraíble). Antes de esto es necesario que verifiques si el almacenamiento externo esta disponible.

Utilizando Environment.getExternalStorageState() obtienes el estado del dispositivo.

Por ejemplo para verificar si el almacenamiento externo esta disponible para leer y escribir:

public boolean isExternalStorageWritable() {
    String state = Environment.getExternalStorageState();
    if (Environment.MEDIA_MOUNTED.equals(state)) {
        return true;
    }
    return false;
}

Para verificar si el almacenamiento externo esta disponible al menos para leer.

public boolean isExternalStorageReadable() {
    String state = Environment.getExternalStorageState();
    if (Environment.MEDIA_MOUNTED.equals(state) ||
        Environment.MEDIA_MOUNTED_READ_ONLY.equals(state)) {
        return true;
    }
    return false;
}

No debemos olvidar que para escribir en el almacenamiento externo debemos agregar este permiso en el “Manifest File” de nuestro proyecto.

 

<manifest ...>

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

</manifest>

Referencias:
Using the External Storage
Environment.getExternalStorageState

Compartir esto:

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *