shivao-projeto/mobile/android
PontualTech / Karlão 21b91b3522
Some checks are pending
Build Android (APK + AAB) / build-android (push) Waiting to run
feat(sync): WebSocket realtime + auto-push/pull entre PC e celular v1.5.0
Backend (server/src/realtime.js):
- WebSocket server em /ws via lib `ws`
- Auth por JWT ou BOAT_TOKEN (mesmo middleware do REST)
- Broadcast de notificações state:changed por user (skip device origem)
- Heartbeat ping/pong + cleanup de conexões mortas
- Presença: avisa todos os devices do user quantos estão online
- POST /api/data agora dispara broadcast pra outros devices em tempo real

Frontend (app/diario-bordo.html):
- Cliente WS com reconnect exponencial (1s→2s→5s→15s→30s→60s)
- deviceId persistente em localStorage (gerado no primeiro boot)
- Heartbeat 25s pra manter NAT/proxy abertos
- Auto-push debounced 2.5s no saveState (acumula edições rápidas)
- Auto-pull debounced 300ms no recebimento de state:changed
- Reconnect ao voltar pro foreground + ao recuperar conexão
- Indicador visual no header: 🟢 online · 🟡 syncing · 🔴 offline ·  disabled · ⚠️ erro

Echo prevention em 3 camadas:
1) Server skip por originDeviceId (header X-Device-Id)
2) Cliente ignora notif do próprio device
3) Guard temporal: pull rejeita se updated_at < lastPushAt

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-04-28 06:51:35 -03:00
..
app feat(sync): WebSocket realtime + auto-push/pull entre PC e celular v1.5.0 2026-04-28 06:51:35 -03:00
gradle/wrapper feat(mobile): Capacitor Android pronto — APK + AAB v1.2.0 buildados 2026-04-27 17:34:19 -03:00
.gitignore feat(mobile): Capacitor Android pronto — APK + AAB v1.2.0 buildados 2026-04-27 17:34:19 -03:00
build.gradle feat(mobile): Capacitor Android pronto — APK + AAB v1.2.0 buildados 2026-04-27 17:34:19 -03:00
capacitor.settings.gradle feat(mobile): Capacitor Android pronto — APK + AAB v1.2.0 buildados 2026-04-27 17:34:19 -03:00
gradle.properties feat(mobile): Capacitor Android pronto — APK + AAB v1.2.0 buildados 2026-04-27 17:34:19 -03:00
gradlew feat(mobile): Capacitor Android pronto — APK + AAB v1.2.0 buildados 2026-04-27 17:34:19 -03:00
gradlew.bat feat(mobile): Capacitor Android pronto — APK + AAB v1.2.0 buildados 2026-04-27 17:34:19 -03:00
settings.gradle feat(mobile): Capacitor Android pronto — APK + AAB v1.2.0 buildados 2026-04-27 17:34:19 -03:00
variables.gradle feat(mobile): Capacitor Android pronto — APK + AAB v1.2.0 buildados 2026-04-27 17:34:19 -03:00