Skip to content

Implement Local User Data Storage #3

@luizGDpulz

Description

@luizGDpulz

💾 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 UserPreferencesRepository responsável por:

    • Salvar dados (ex: nome, tema, preferências).
    • Ler dados como Flow para 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


📚 Referências

Metadata

Metadata

Assignees

Labels

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions