-
Notifications
You must be signed in to change notification settings - Fork 1
Open
Labels
Description
💾 Issue: Implementar Armazenamento Local de Dados do Usuário
Descrição:
Implementar um sistema simples de armazenamento local para salvar e recuperar dados de texto do usuário (ex: nome, preferências ou configurações básicas).
O objetivo é permitir que o app mantenha informações locais entre sessões, de forma reativa e segura, usando as APIs modernas do Android.
🎯 Objetivo
- Criar uma camada de armazenamento local para persistir pequenos dados de texto.
- Permitir leitura e escrita reativas (observáveis) para atualização automática na interface.
- Garantir persistência mesmo após fechamento do app.
- Facilitar futura migração para DataStore Proto ou Room, se necessário.
🧩 Tarefas
-
Definir o tipo de armazenamento:
- ✅ Usar DataStore (Preferences) como padrão moderno (substituto do SharedPreferences).
-
Criar classe
UserPreferencesRepositoryresponsável por:- Salvar dados (ex: nome, tema, preferências).
- Ler dados como
Flowpara integração com Compose.
-
Integrar com o ViewModel para leitura e escrita reativa.
-
Criar exemplos de uso na UI (ex: campo de nome do usuário salvo localmente).
-
Adicionar função para limpar dados (reset local).
-
Garantir persistência após reiniciar o app.
✅ Critérios de Aceite
- Dados salvos permanecem após fechar e reabrir o app.
- Alterações são refletidas automaticamente na UI.
- Estrutura modular (
data/local/UserPreferencesRepository.kt). - Código bem documentado e seguindo boas práticas do Android Jetpack.
- Nenhum crash ou comportamento inesperado durante leitura/escrita.
🔧 Tipo
feature | data | infra