Environment.ExternalStorageDirectory Propriedade
Definição
Importante
Algumas informações se referem a produtos de pré-lançamento que podem ser substancialmente modificados antes do lançamento. A Microsoft não oferece garantias, expressas ou implícitas, das informações aqui fornecidas.
Retorne o diretório de armazenamento compartilhado/externo primário.
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 da propriedade
O valor do diretório de armazenamento externo.
- Atributos
Comentários
Retorne o diretório de armazenamento compartilhado/externo primário. Esse diretório pode não estar acessível no momento se ele tiver sido montado pelo usuário em seu computador, tiver sido removido do dispositivo ou algum outro problema tiver acontecido. Você pode determinar seu estado atual com #getExternalStorageState().
<em>Observação: não se confunda com a palavra "externo" aqui. Esse diretório pode ser melhor pensado como armazenamento compartilhado/mídia. É um sistema de arquivos que pode conter uma quantidade relativamente grande de dados e que é compartilhado em todos os aplicativos (não impõe permissões). Tradicionalmente, esse é um cartão SD, mas também pode ser implementado como armazenamento interno em um dispositivo diferente do armazenamento interno protegido e pode ser montado como um sistema de arquivos em um computador.</em>
Em dispositivos com vários usuários (conforme descrito por UserManager), cada usuário tem seu próprio armazenamento compartilhado isolado. Os aplicativos só têm acesso ao armazenamento compartilhado para o usuário em que estão sendo executados.
Em dispositivos com vários diretórios de armazenamento compartilhados/externos, esse diretório representa o armazenamento primário com o qual o usuário interagirá. O acesso ao armazenamento secundário está disponível por meio Context#getExternalFilesDirs(String)de , Context#getExternalCacheDirs()e Context#getExternalMediaDirs().
Os aplicativos não devem usar diretamente esse diretório de nível superior, a fim de evitar poluir o namespace raiz do usuário. Todos os arquivos que são privados para o aplicativo devem ser colocados em um diretório retornado pelo android.content.Context#getExternalFilesDir Context.getExternalFilesDirqual o sistema cuidará da exclusão se o aplicativo estiver desinstalado. Outros arquivos compartilhados devem ser colocados em um dos diretórios retornados por #getExternalStoragePublicDirectory.
Gravar nesse caminho requer a android.Manifest.permission#WRITE_EXTERNAL_STORAGE permissão e, a partir android.os.Build.VERSION_CODES#KITKATdo início, o acesso de leitura requer a android.Manifest.permission#READ_EXTERNAL_STORAGE permissão, que é concedida automaticamente se você tiver a permissão de gravação.
android.os.Build.VERSION_CODES#KITKATA partir de então, se o aplicativo precisar apenas armazenar dados internos, considere usarContext#getExternalFilesDir(String), Context#getExternalCacheDir()ouContext#getExternalMediaDirs(), que não exijam permissões para ler ou gravar.
Esse caminho pode mudar entre as versões da plataforma, portanto, os aplicativos só devem persistir caminhos relativos.
Aqui está um exemplo de código típico para monitorar o estado do armazenamento externo:
{
Java documentação para android.os.Environment.getExternalStorageDirectory().
Partes desta página são modificações baseadas no trabalho criado e compartilhado pelo Project Open Source do Open Source e usadas de acordo com os termos descritos na Creative Commons 2.5.