conversor_de_moedas/README.md

114 lines
3.4 KiB
Markdown

# Conversor de Moedas - Android SQLite
Um aplicativo Android completo para conversão de moedas usando SQLite como banco de dados local.
## Funcionalidades
- **Conversão de Moedas**: Converte valores entre diferentes moedas usando taxas de câmbio pré-definidas
- **Banco de Dados SQLite**: Armazena moedas e histórico de conversões localmente
- **Histórico de Conversões**: Visualiza e gerencia o histórico de conversões realizadas
- **Taxa de Câmbio**: Mostra a taxa de câmbio atual entre as moedas selecionadas
- **Interface Intuitiva**: Design moderno com Material Design
## Moedas Suportadas
- USD - Dólar Americano ($)
- BRL - Real Brasileiro (R$)
- EUR - Euro (€)
- GBP - Libra Esterlina (£)
- JPY - Iene Japonês (¥)
- CAD - Dólar Canadense (C$)
- AUD - Dólar Australiano (A$)
- CHF - Franco Suíço (CHF)
- CNY - Yuan Chinês (¥)
- MXN - Peso Mexicano ($)
## Estrutura do Projeto
### Classes Principais
1. **DatabaseHelper**: Gerencia o banco de dados SQLite
- Criação e atualização das tabelas
- Operações CRUD para moedas e conversões
- Inserção de dados padrão
2. **CurrencyConverter**: Lógica de conversão de moedas
- Conversão entre moedas
- Cálculo de taxas de câmbio
- Formatação de valores monetários
3. **Currency**: Modelo de dados para moedas
- Código, nome, símbolo e taxa de câmbio
4. **Conversion**: Modelo de dados para conversões
- Moedas de origem e destino, valores e data
5. **ConversionHistoryAdapter**: Adapter para ListView do histórico
### Banco de Dados
#### Tabela `currencies`
- `id`: Chave primária
- `code`: Código da moeda (ex: USD, BRL)
- `name`: Nome da moeda
- `symbol`: Símbolo da moeda
- `rate_to_usd`: Taxa de câmbio em relação ao USD
#### Tabela `conversions`
- `id`: Chave primária
- `from_currency`: Moeda de origem
- `to_currency`: Moeda de destino
- `amount`: Valor convertido
- `result`: Resultado da conversão
- `date`: Data/hora da conversão
## Como Usar
1. **Digite o valor** a ser convertido no campo "Valor"
2. **Selecione a moeda de origem** no spinner "De"
3. **Selecione a moeda de destino** no spinner "Para"
4. **Clique em "Converter"** para realizar a conversão
5. **Visualize o resultado** na área de resultado
6. **Consulte o histórico** de conversões na lista abaixo
7. **Limpe o histórico** usando o botão "Limpar" se necessário
## Tecnologias Utilizadas
- **Android SDK**: Desenvolvimento nativo Android
- **SQLite**: Banco de dados local
- **Material Design**: Interface moderna
- **Java**: Linguagem de programação
- **ConstraintLayout**: Layout responsivo
- **CardView**: Componentes visuais
## Instalação
1. Clone o repositório
2. Abra o projeto no Android Studio
3. Sincronize as dependências do Gradle
4. Execute o aplicativo em um dispositivo ou emulador
## Requisitos
- Android API 24+ (Android 7.0)
- Android Studio
- Java 11+
## Funcionalidades Técnicas
- **Persistência Local**: Dados armazenados no SQLite
- **Validação de Entrada**: Verificação de valores válidos
- **Tratamento de Erros**: Mensagens de erro amigáveis
- **Interface Responsiva**: Adaptável a diferentes tamanhos de tela
- **Performance**: Operações otimizadas de banco de dados
## Melhorias Futuras
- Integração com API de câmbio em tempo real
- Gráficos de histórico de conversões
- Notificações de mudanças de taxa
- Suporte a mais moedas
- Modo offline/online
- Backup e sincronização de dados