O Google tem o compromisso de promover a igualdade racial para as comunidades negras. Saiba como.

Salvar arquivos no armazenamento do dispositivo

O Android usa um sistema de arquivos parecido com sistemas de arquivos em disco de outras plataformas. Esta página explica como trabalhar com o sistema de arquivos Android para ler e gravar arquivos com as APIs File.

Um objeto File funciona bem para ler ou gravar grandes quantidades de dados em ordem crescente, sem pular de um registro para o outro. É bom, por exemplo, para arquivos de imagem ou qualquer troca executada em uma rede.

O local exato em que seus arquivos serão salvos pode variar entre dispositivos. Por isso, use os métodos descritos nesta página para acessar caminhos de armazenamento interno e externo em vez de usar caminhos de arquivo absolutos.

Para visualizar os arquivos em um dispositivo, você pode registrar o local do arquivo, fornecido por métodos como File.getAbsolutePath() e depois navegar nos arquivos do dispositivo com o Device File Explorer do Android Studio.

Escolher entre armazenamento interno ou externo

Todos os dispositivos Android têm duas áreas de armazenamento de arquivos: armazenamento interno e armazenamento externo. Esses nomes têm origem no início do Android, quando a maior parte dos dispositivos oferecia memória embutida não volátil (armazenamento interno), além de uma mídia de armazenamento removível, por exemplo, cartões micro SD (armazenamento externo). Agora, muitos dispositivos dividem o espaço de armazenamento permanente em partições "internas" e "externas" separadas. Assim, mesmo sem uma mídia de armazenamento removível, esses dois espaços de armazenamento sempre existem, e o comportamento da API é o mesmo, independentemente de o armazenamento externo ser removível ou não.

Como o armazenamento externo pode ser removível, há algumas diferenças entre essas duas opções, como mostrado a seguir.

Armazenamento interno:

  • Está sempre disponível.
  • Os arquivos salvos nele só podem ser acessados pelo seu app.
  • Quando o usuário desinstala o app, o sistema remove todos os arquivos do app salvos no armazenamento interno.

O armazenamento interno funciona melhor quando você quer garantir que nem o usuário nem outros apps tenham acesso aos seus arquivos.

Armazenamento externo:

  • Não está sempre disponível, porque o usuário pode montar o armazenamento externo como um armazenamento USB e, em alguns casos, removê-lo do dispositivo.
  • É de leitura universal, ou seja, arquivos salvos nele podem ser lidos por outros apps e dispositivos.
  • Quando o usuário desinstala o app, o sistema só remove os arquivos do seu app daqui se você os salva no diretório a partir de getExternalFilesDir().

O armazenamento externo é o melhor local para arquivos que não exigem acesso restrito e para arquivos que você quer compartilhar com outros apps ou permitir que o usuário acesse em um computador.

Observação: embora os apps sejam instalados no armazenamento interno por padrão, é possível permitir que seu app seja instalado no armazenamento externo, especificando o atributo android:installLocation no manifesto. Os usuários se beneficiam dessa opção quando o tamanho do APK é muito grande e o espaço de armazenamento externo é maior do que o interno. Para saber mais, consulte Local da instalação do app.

Outros recursos

Para saber mais sobre como salvar arquivos no armazenamento do dispositivo, consulte os recursos a seguir.

Codelabs