Xamarin.Essentials: Auxiliares do sistema de arquivos

A classe FileSystem contém uma série de auxiliares para localizar o cache e os diretórios de dados do aplicativo e abrir arquivos dentro do pacote de aplicativos.

Introdução

Para começar a usar essa API, leia o guia de introdução para Xamarin.Essentials garantir que a biblioteca esteja instalada e configurada corretamente em seus projetos.

Como usar os auxiliares de sistema de arquivos

Adicione uma referência a Xamarin.Essentials em sua classe:

using Xamarin.Essentials;

Para fazer com que o diretório do aplicativo armazene dados de cache. Os dados de cache podem ser usados para quaisquer dados que precisem permanecer mais tempo do que os dados temporários, mas não devem ser dados necessários para uma operação correta, uma vez que o SO determina quando esse armazenamento é limpo.

var cacheDir = FileSystem.CacheDirectory;

Para obter o diretório de nível superior do aplicativo para todos os arquivos que não são arquivos de dados do usuário. O backup desses arquivos ocorre na estrutura de sincronização do sistema operacional. Veja abaixo as particularidades de implementação da plataforma.

var mainDir = FileSystem.AppDataDirectory;

Se você quiser abrir um arquivo que foi agrupado no pacote do aplicativo, poderá usar o OpenAppPackageFileAsync método para ler o conteúdo. No exemplo abaixo, um arquivo chamado mybundledfile.txt foi adicionado a cada plataforma. Consulte a seção específicas da implementação da plataforma para obter detalhes.

 var fileName = "mybundledfile.txt";
 using (var stream = await FileSystem.OpenAppPackageFileAsync(fileName))
 {
    using (var reader = new StreamReader(stream))
    {
        var fileContents = await reader.ReadToEndAsync();
    }
 }

Particularidades de implementação da plataforma

  • CacheDirectory – Retorna o CacheDir do contexto atual.
  • AppDataDirectory – Retorna o FilesDir do contexto atual e realiza o backup usando o Backup Automático a partir da API 23 e acima.

Adicione qualquer arquivo à pasta Ativos no projeto do Android e marque a Ação de Compilação como AndroidAsset para usá-la com OpenAppPackageFileAsync.

API

Encontre mais vídeos sobre o Xamarin no Channel 9 e no YouTube.