Logo do Venturus
Android 10: O que muda com o armazenamento por escopo
  • 28 de janeiro de 2020
  • Blog

Android 10: O que muda com o armazenamento por escopo

O sistema operacional Android evoluiu muito desde sua criação e, com sua evolução, várias mudanças foram implementadas de modo a melhorar a privacidade do usuário e o controle das informações armazenadas pelos aplicativos.

Mesmo com restrições colocadas nas versões anteriores do sistema operacional, os aplicativos ainda conseguiam obter acesso ao conteúdo do usuário sem seu conhecimento, utilizando esses arquivos para monitoramento e acesso a dados pessoais. Para impedir esse compartilhamento de informações sem consentimento dos usuários, no Android 10, foi introduzido o conceito de armazenamento por escopo.

O armazenamento por escopo limita o acesso a informações sensíveis (localização, fotos, documentos etc.) por aplicativos que não deveriam ter acesso a essas informações e garante que os dados gerados por esses aplicativos sejam excluídos quando os mesmos são desinstalados. Embora essas alterações tenham sido incluídas no Android 10, o desenvolvedor ainda pode optar por desligá-las para ter mais tempo para adaptar os aplicativos. No entanto, elas serão obrigatórias no Android 11.

 

Evolução do acesso ao sistema de arquivos

Inicialmente, o acesso a arquivos no Android era semelhante ao acesso a arquivos num computador pessoal. De posse de permissão de leitura ou escrita, era possível acessar todos os arquivos em áreas de armazenamento comuns. Esses arquivos poderiam conter informações sensíveis. Além de obter informações pessoais, os aplicativos podiam armazenar dados específicos em qualquer lugar na área comum de armazenamento, deixando muitos dados para trás quando eram desinstalados.

No Android 5 (Lollipop), a escolha de permitir o acesso a arquivos e pastas podia ser lembrada pelo aplicativo, de forma que não era mais necessário continuar pedindo permissão para o usuário a todo momento.

No Android 7 (Nougat), uma forma simplificada de acesso ao cartão de memória foi introduzida, em que era possível que o aplicativo escolhesse uma pasta para acesso de leitura e escrita e o usuário poderia conceder ou negar a permissão. Porém, era possível solicitar permissão de acesso para cartão de memória inteiro e, caso o usuário aceitasse essa permissão, o aplicativo continuava tendo acesso a todos os arquivos do usuário.

Mesmo com todas as restrições listadas anteriormente, continuava sendo possível o acesso à área de armazenamento comum na memória principal do dispositivo (memória que vem de fábrica nos aparelhos) e aplicativos ainda tinham acesso ao cartão de memória caso o usuário concedesse as devidas permissões.

A partir do Android 10, mudanças foram feitas para evitar os problemas de privacidade e de dados de aplicativos que não são apagados numa eventual desinstalação do mesmo.

 

O que muda com o armazenamento por escopo introduzido no Android 10?

No armazenamento por escopo, os aplicativos perdem o acesso irrestrito ao armazenamento comum —tanto o armazenamento interno quanto do cartão de memória. Os aplicativos ainda podem ler e escrever livremente no sistema de arquivos, porém, eles não têm mais a visão completa do mesmo. Ao invés disso, de forma que ele somente tenha acesso aos arquivos criados por ele mesmo.

Evita-se, assim, o acesso a arquivos criados por outros aplicativos. Outra vantagem dessa implementação é que, uma vez que o aplicativo for desinstalado, todos os arquivos criados por ele serão excluídos, evitando problemas de arquivos que ficam esquecidos nos dispositivos por aplicativos que não estão mais presentes.

Porém, existem pastas especiais do sistema para armazenamento de arquivos que podem ser compartilhadas entre aplicativos, como pastas utilizadas para downloads, áudios, vídeos e imagens. Com o armazenamento por escopo, os aplicativos podem armazenar arquivos nestas pastas sem restrição e nem necessidade de solicitar permissões de acesso. Nestas pastas (menos na pasta de downloads), todos os arquivos criados pelo aplicativo podem ser lidos sem necessidade de permissão especial, porém, arquivos gerados por outros aplicativos necessitam de permissão do usuário para serem acessados.

Além dessas mudanças, as informações de localização armazenadas em vídeos e imagens são removidas quando um aplicativo obtém acesso a esses arquivos. Dessa forma, evita-se que aplicativos que tentam rastrear os locais em que o usuário esteve presente através de suas fotos consigam obter essas informações. Para aplicativos que realmente precisam desses dados, uma nova permissão foi criada. Esses aplicativos podem solicitá-la caso necessário e o usuário será informado que o aplicativo deseja acessar a localização das fotografias antes de conceder a permissão.

Aqui você encontra mais informações das mudanças necessárias nos aplicativos para suportar o armazenamento por escopo.

 

Conclusão

Com a implementação do armazenamento por escopo, foi possível restringir as brechas utilizadas por vários aplicativos para obter acesso a informações sensíveis dos usuários e, ao mesmo tempo, evitar que arquivos de aplicativos desinstalados continuem armazenados. Além disso, como esta solução vale tanto para a memória principal do dispositivo quanto para o cartão de memória, facilita a implementação pelos desenvolvedores, além de evitar brechas no acesso aos arquivos.