App Android

O app Plantgotchi para Android e construido com Jetpack Compose e Material 3, oferecendo uma experiencia moderna com suporte completo offline.

Principais Recursos

  • Escaneamento de sensores BLE โ€” descubra sensores usando as APIs BLE do Android
  • Leituras em tempo real โ€” dados ao vivo de umidade, temperatura, luz e bateria
  • Offline-first โ€” banco de dados Room local (SQLite) armazena todos os dados
  • Sincronizacao na nuvem โ€” envie e receba dados do Turso quando conectado
  • Registro de cuidados โ€” acompanhe rega, adubacao, replantio, poda e anotacoes
  • Motor de regras โ€” alertas offline instantaneos quando leituras saem da faixa

Escaneamento BLE

O app Android escaneia sensores Plantgotchi que anunciam o UUID do servico GATT personalizado (0000FE00-...). O BLEManager gerencia o ciclo de vida da conexao, e o SensorParser converte bytes BLE brutos em leituras tipadas.

O parsing de dados segue o mesmo protocolo: umidade (uint16 LE), temperatura (int16 LE รท 100), luz (uint32 LE) e bateria (uint8). Valores fora dos limites retornam null.

Banco de Dados Local

O app usa Room (abstracao SQLite do Android) com classes de entidade para Plant, SensorReading, CareLog e Recommendation. Classes DAO fornecem consultas tipadas, e o esquema corresponde exatamente as plataformas web e iOS para sincronizacao perfeita na nuvem.

Motor de Regras Offline

O app Android inclui um RuleEngine integrado que avalia cada leitura de sensor contra os limites da sua planta. Alertas sao gerados instantaneamente โ€” sem necessidade de internet. As regras cobrem umidade (baixa/alta), temperatura (baixa/alta), nivel de bateria e incompatibilidades de preferencia de luz.

Requisitos

  • Android 8.0 (API 26) ou posterior
  • Permissoes de Bluetooth e localizacao para escaneamento BLE
  • Internet necessaria apenas para sincronizacao na nuvem e recomendacoes por IA