Skip to content

MedTrack-Project/MedTrack-Mobile

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

125 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Logo do MedTrack

MedTrack: Aplicação Mobile

Aplicativo Android para controle inteligente de medicação via OCR e notificações

Visão Geral

Demonstração do MedTrack

O MedTrack Mobile é um app Android desenvolvido para auxiliar no acompanhamento correto de medicamentos, unindo OCR, notificações e acessibilidade em um só lugar.

  • 🔔 Notificações inteligentes
  • 📸 Validação por foto usando tecnologia OCR
  • Acessibilidade como prioridade

Público-alvo:

  • 👴 Idosos e pacientes com muitos rémedios que dificulte a organização
  • 🧑‍⚕️ Cuidadores e familiares para monitoramento

✨ Destaques Técnicos

🏗️ Arquitetura do Projeto

O MedTrack foi desenvolvido seguindo os princípios do MVVM (Model-View-ViewModel) para garantir uma separação clara de responsabilidades e facilitar a manutenção do código. Utilizamos componentes modernos do Android Jetpack como:

  • ViewModel para gerenciamento de dados da UI
  • LiveData para atualizações reativas
  • Coroutines para operações assíncronas
Diagrama MVVM

🎨 Interface Gráfica

Desenvolvida inteiramente com Jetpack Compose, a interface prioriza:

  • Design moderno e intuitivo
  • Acessibilidade

Lista inteligente de horários

  • 💊 Contínuo (emoji de infinito 🔄)
  • ⏳ Temporário (emoji de calendário 📅)
Lista de horários vazia Lista de horários completa

💡 Pop-ups intuitivos

Pop-up Editar Pop-up Erro Pop-up Sucesso

📸 Captura e Reconhecimento (OCR)

Integramos as poderosas ferramentas do Google ML Kit (Text recognition e Object detection) para:

  • OCR (Reconhecimento Óptico de Caracteres) para extrair dados de bulas e caixas de remédio
  • Detecção de objetos para identificar medicamentos na câmera
  • Processamento offline para garantir privacidade e disponibilidade

🎥 Demonstração do OCR identificando: nome do medicamento, dosagem e horários

Demonstração do OCR

💾 Armazenamento Local

Para persistência de dados, utilizamos:

  • Room Database como camada de abstração sobre SQLite
  • Armazenamento seguro de informações sensíveis
  • Sincronização eficiente com o backend
@Database(
    entities = [Usuario::class, Medicamento::class, Notificacao::class, Confirmacao::class],
    version = 4
)
    abstract class AppDatabase : RoomDatabase() {
    abstract fun medicineDao(): MedicineDao
}

🌐 Comunicação com API

Integração com o backend através de:

  • Retrofit para requisições HTTP

  • Moshi para serialização/desserialização JSON

Tratamento robusto de erros e estados de carregamento:

interface ApiService {

    @POST("auth/mobile/login")
    suspend fun login(@Body loginRequest: LoginRequest): Response<LoginResponse>

    @GET("usuario/mobile")
    suspend fun getUsuario(@Header("Authorization") token: String): Response<Usuario>

    @GET("medicamento/mobile/lista")
    suspend fun getMedicamentos(@Header("Authorization") token: String): Response<List<Medicamento>>

    @POST("/api/confirmacao")
    suspend fun confirmarMedicamento(
        @Header("Authorization") token: String,
        @Body request: DadosConfirmacaoRequest
    )

}

🔧 Outras Bibliotecas

  • AlarmManager para agendamento de notificações
  • Material3 para componentes UI modernos

🚀 Como Executar

  1. Pré-requisitos:

    • Android Studio Giraffe+
    • Dispositivo/emulador com Android 9+
  2. Configuração:

    • Clonar repositório
git clone https://github.com/seu-usuario/medtrack-mobile.git

Configurar variáveis no ApiClient.kt para o endpoint do Backend:

  class ApiClient {
    private val BASE_URL = "http://seu-endpoint:8081"
  }

🌐 MedTrack: Versão Web

Plataforma Complementar

O MedTrack Web é a interface administrativa do sistema, desenvolvida para:

  • 👩‍⚕️ Profissionais de saúde gerenciarem pacientes
  • 👨‍👩‍👧 Familiares acompanharem a medicação remota
  • 📊 Visualização de relatórios e histórico completo
Dashboard Web

Integração Mobile-Web

  • 🔄 Sincronização em tempo real dos dados de medicação
  • 🔐 Autenticação unificada JWT
  • 📩 Notificações complementares via email

🌟 Time de Contribuidores

Ellen Rocha
Ellen Rocha

Maria Clara
Maria Clara

Yann Leão
Yann Leão

🎓 Orientação

Prof. Igor Amaral
Prof. Igor Amaral

Orientador

📄 Licença

Projeto acadêmico desenvolvido para a disciplina de Projeto Interdisciplinar de Engenharia da Computação 1 (PIEC1)
Universidade Federal Rural de Pernambuco — Unidade Acadêmica de Belo Jardim (UFRPE/UABJ)

About

Este repositório contém o código e a documentação do projeto interdisciplinar da disciplina Projeto Interdisciplinar de Engenharia da Computação. O objetivo do projeto é oferecer uma solução simples e eficiente para a adesão ao tratamento médico, melhorando a qualidade de vida dos usuários.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages