Environment.ExternalStorageDirectory Propiedad
Definición
Importante
Parte de la información hace referencia a la versión preliminar del producto, que puede haberse modificado sustancialmente antes de lanzar la versión definitiva. Microsoft no otorga ninguna garantía, explícita o implícita, con respecto a la información proporcionada aquí.
Devuelve el directorio de almacenamiento compartido o externo principal.
public static Java.IO.File? ExternalStorageDirectory { [Android.Runtime.Register("getExternalStorageDirectory", "()Ljava/io/File;", "")] get; }
[<get: Android.Runtime.Register("getExternalStorageDirectory", "()Ljava/io/File;", "")>]
static member ExternalStorageDirectory : Java.IO.File
Valor de propiedad
- Atributos
Comentarios
Devuelve el directorio de almacenamiento compartido o externo principal. Es posible que este directorio no sea accesible actualmente si el usuario lo ha montado en su equipo, se ha quitado del dispositivo o se ha producido algún otro problema. Puede determinar su estado actual con #getExternalStorageState()
.
<em>Note: no se confunda por la palabra "external" aquí. Este directorio se puede considerar mejor como almacenamiento multimedia o compartido. Es un sistema de archivos que puede contener una cantidad relativamente grande de datos y que se comparte en todas las aplicaciones (no aplica permisos). Tradicionalmente se trata de una tarjeta SD, pero también se puede implementar como almacenamiento integrado en un dispositivo que es distinto del almacenamiento interno protegido y se puede montar como un sistema de archivos en un equipo.</em>
En dispositivos con varios usuarios (como se describe en UserManager
), cada usuario tiene su propio almacenamiento compartido aislado. Las aplicaciones solo tienen acceso al almacenamiento compartido para el usuario en el que se ejecutan.
En los dispositivos con varios directorios de almacenamiento compartidos o externos, este directorio representa el almacenamiento principal con el que el usuario interactuará. El acceso al almacenamiento secundario está disponible a través Context#getExternalFilesDirs(String)
de , Context#getExternalCacheDirs()
y Context#getExternalMediaDirs()
.
Las aplicaciones no deben usar directamente este directorio de nivel superior para evitar contaminar el espacio de nombres raíz del usuario. Los archivos privados para la aplicación deben colocarse en un directorio devuelto por android.content.Context#getExternalFilesDir Context.getExternalFilesDir
, que el sistema se encargará de eliminar si se desinstala la aplicación. Otros archivos compartidos deben colocarse en uno de los directorios devueltos por #getExternalStoragePublicDirectory
.
La escritura en esta ruta de acceso requiere el android.Manifest.permission#WRITE_EXTERNAL_STORAGE
permiso y, a partir android.os.Build.VERSION_CODES#KITKAT
de , el acceso de lectura requiere el android.Manifest.permission#READ_EXTERNAL_STORAGE
permiso , que se concede automáticamente si contiene el permiso de escritura.
android.os.Build.VERSION_CODES#KITKAT
A partir de , si la aplicación solo necesita almacenar datos internos, considere la posibilidad de usar Context#getExternalFilesDir(String)
, Context#getExternalCacheDir()
o Context#getExternalMediaDirs()
, que no requieren permisos para leer o escribir.
Esta ruta de acceso puede cambiar entre versiones de plataforma, por lo que las aplicaciones solo deben conservar rutas de acceso relativas.
Este es un ejemplo de código típico para supervisar el estado del almacenamiento externo:
{
Documentación de Java para android.os.Environment.getExternalStorageDirectory()
.
Las partes de esta página son modificaciones basadas en el trabajo creado y compartido por el proyecto de código y se usan según los términos descritos en la creative Commons 2.5.