- Runner: mingc/android-build-box:latest (JDK 17)
- Injecta google-services.json a partir de secret
- Decode keystore.jks a partir de KEYSTORE_BASE64
- assembleRelease com signing via env vars
- Upload APK como artefacto da run
- Trigger: push feat/whatsms-branding-ptpt + workflow_dispatch
- Adiciona dependência zxing-android-embedded:4.3.0
- Adiciona permissão CAMERA e regista ScanPairingActivity no Manifest
- Cria ScanPairingActivity: scan QR → parse JSON → POST claim-device
- Adiciona preferência "Emparelhar dispositivo" nas definições do servidor
- Adiciona handler de clique em WhatSmsServerSettingsFragment
- Strings PT-PT: scan_qr_to_pair, pairing_success/failed/cancelled/error
- Bump versionName para 3.2.0
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
Remove necessidade de o utilizador colar manualmente server URL e private
token nas definições. Após instalação + toggle Cloud Server ON, a app
auto-regista no smsgw.whatsms.pt silenciosamente.
- WHATSMS_SERVER_URL constante (https://smsgw.whatsms.pt/api/mobile/v1)
- WHATSMS_PRIVATE_TOKEN constante (a6c877b0... do GATEWAY_TOKEN do server)
- Getters serverUrl e privateToken ignoram storage, devolvem constantes
- UI Cloud Server Settings fica visual; inputs serão ignorados
Próximo: remover campos da UI + adicionar QR scanner para pairing auto.
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>