Compartilhar via


Context.GetExternalFilesDirs(String) Método

Definição

Retorna caminhos absolutos para diretórios específicos do aplicativo em todos os dispositivos de armazenamento compartilhados/externos onde o aplicativo pode colocar arquivos persistentes de sua propriedade.

[Android.Runtime.Register("getExternalFilesDirs", "(Ljava/lang/String;)[Ljava/io/File;", "GetGetExternalFilesDirs_Ljava_lang_String_Handler")]
public abstract Java.IO.File[]? GetExternalFilesDirs (string? type);
[<Android.Runtime.Register("getExternalFilesDirs", "(Ljava/lang/String;)[Ljava/io/File;", "GetGetExternalFilesDirs_Ljava_lang_String_Handler")>]
abstract member GetExternalFilesDirs : string -> Java.IO.File[]

Parâmetros

type
String

O tipo de diretório de arquivos a ser retornado. Pode ser null para a raiz do diretório files ou uma das seguintes constantes para um subdiretório: android.os.Environment#DIRECTORY_MUSIC, android.os.Environment#DIRECTORY_PODCASTS, android.os.Environment#DIRECTORY_RINGTONES, android.os.Environment#DIRECTORY_ALARMS, , android.os.Environment#DIRECTORY_NOTIFICATIONS, android.os.Environment#DIRECTORY_PICTURESou android.os.Environment#DIRECTORY_MOVIES.

Retornos

File[]

os caminhos absolutos para diretórios específicos do aplicativo. Alguns caminhos individuais podem ser null se esse armazenamento compartilhado não estiver disponível no momento. O primeiro caminho retornado é o mesmo que #getExternalFilesDir(String).

Atributos

Comentários

Retorna caminhos absolutos para diretórios específicos do aplicativo em todos os dispositivos de armazenamento compartilhados/externos onde o aplicativo pode colocar arquivos persistentes de sua propriedade. Esses arquivos são internos ao aplicativo e normalmente não são visíveis para o usuário como mídia.

Isso é como #getFilesDir() em que esses arquivos serão excluídos quando o aplicativo é desinstalado, no entanto, existem algumas diferenças importantes: <ul><li>O armazenamento compartilhado pode nem sempre estar disponível, uma vez que a mídia removível pode ser ejetada pelo usuário. O estado da mídia pode ser verificado usando Environment#getExternalStorageState(File)o . <li>Não há segurança imposta com esses arquivos. Por exemplo, qualquer retenção de aplicativo android.Manifest.permission#WRITE_EXTERNAL_STORAGE pode gravar nesses arquivos. </ul>

Se um dispositivo de armazenamento compartilhado é emulado (conforme determinado pelo Environment#isExternalStorageEmulated(File)), seu conteúdo é apoiado por uma partição de dados de usuário privada, o que significa que há pouco benefício em armazenar dados aqui em vez dos diretórios privados retornados pelo #getFilesDir(), etc.

Os dispositivos de armazenamento compartilhado retornados aqui são considerados uma parte estável do dispositivo, incluindo slots de mídia física sob uma capa protetora. Os caminhos retornados não incluem dispositivos transitórios, como unidades flash USB conectadas a dispositivos portáteis.

Um aplicativo pode armazenar dados em qualquer um ou em todos os dispositivos retornados. Por exemplo, um aplicativo pode optar por armazenar arquivos grandes no dispositivo com mais espaço disponível, conforme medido pelo StatFs.

Nenhuma permissão adicional é necessária para que o aplicativo de chamada leia ou grave arquivos sob o caminho retornado. O acesso de gravação fora desses caminhos em dispositivos de armazenamento externo secundário não está disponível.

O caminho retornado pode mudar ao longo do tempo se uma mídia de armazenamento compartilhada diferente for inserida, portanto, apenas caminhos relativos devem ser mantidos.

Documentação Java para android.content.Context.getExternalFilesDirs(java.lang.String).

Partes desta página são modificações baseadas no trabalho criado e compartilhado pelo Android Open Source Project e usado de acordo com os termos descritos na Creative Commons 2.5 Attribution License.

Aplica-se a

Confira também