Flutter: Armazenamento de dados
Source: Dev.to
Introdução
O Flutter permite armazenar dados no dispositivo em que o aplicativo está instalado. Esses dados podem ter diferentes finalidades, como exibir ou não um pop‑up promocional ou salvar preferências (por exemplo, o tema a ser usado). Este artigo explica a diferença entre dados simples e criptografados e apresenta os principais pacotes que podem ser usados para cada tipo.
Tipos de dados
Dados simples
São informações que não exigem segurança adicional ao serem armazenadas, como preferências do usuário ou visualizações de determinados itens. Geralmente são textos ou valores primitivos e podem ser acessados facilmente, inclusive em modo debug no Android.
Dados criptografados
Consistem em informações codificadas de forma humanamente ilegível por meio de um algoritmo. Quando se trata de dados sensíveis (por exemplo, informações pessoais do usuário), recomenda‑se usar um armazenamento que criptografe os dados antes de salvá‑los no dispositivo.
Armazenamento simples: SharedPreferences
- Permite o armazenamento de valores primitivos (
bool,int,double,String,List) sem criptografia. - É um pacote recomendado pelo time do Flutter.
- A instalação é simples e permite configurar propriedades durante a implementação.
Link do pacote:
SharedPreferences on pub.dev
Armazenamento criptografado: flutter_secure_storage
- Salva os dados de forma segura, utilizando o Keychain no iOS e o Keystore no Android.
- Os valores são armazenados criptografados no dispositivo.
- Ideal para informações sensíveis, como tokens de autenticação ou dados pessoais.
Link do pacote:
flutter_secure_storage on pub.dev
Considerações finais
Neste artigo foram abordados os conceitos de dados não sensíveis e criptografados, apresentando os pacotes SharedPreferences e flutter_secure_storage como alternativas para salvar dados em dispositivos. Além desses pacotes, também é possível armazenar dados mais complexos usando bancos de dados locais; a escolha do método dependerá das especificações e do uso pretendido para cada tipo de dado.