Daniel
73398e91ed
Version alignment + release script — single source of truth
...
Aligns every version string in the repo to 6.1.0:
- package.json: 6.0.0 → 6.1.0
- mobile/package.json: 1.0.0 → 6.1.0
- mobile/android/app/build.gradle: versionCode 1 → 610,
versionName "1.0" → "6.1.0"
- server.js: hardcoded "v6.0" → reads root package.json at boot
- /api/health/detailed now reports APP_VERSION from package.json
Adds scripts/release.sh — a one-command bump:
scripts/release.sh 6.1.1 # local bump + tag
scripts/release.sh 6.1.1 --push # + git push
scripts/release.sh 6.1.1 --push --gh # + GitHub release (uploads
APK if already built)
Updates all three version sites, commits "Release v6.1.1",
creates annotated tag, optionally pushes and opens a release.
versionCode encoded as MAJ*100000 + MIN*1000 + PATCH so patch
updates always increment monotonically.
2026-04-14 23:18:47 +02:00
Daniel
e1ce374809
Native Android: biometric auth, foreground service bridge, mic fix
...
Major Android native improvements:
Biometric authentication:
- Native AndroidX BiometricPrompt on app launch (2nd launch onwards)
- Supports fingerprint, face, iris, and device PIN/password fallback
- Gracefully skips if no biometric hardware or first launch
- Uses SharedPreferences to track first launch
Microphone permission:
- Added MODIFY_AUDIO_SETTINGS permission (required for WebView audio)
- Added androidScheme: "https" in Capacitor config (getUserMedia requires
secure context)
- WebChromeClient properly grants WebView permission after Android
runtime permission is obtained
- Handles pending permission request across the async flow
Background recording bridge:
- NativeRecording JavaScript interface exposed to WebView
- startForegroundService() / stopForegroundService() callable from JS
- Web app calls these on recording start/stop in liveEncounter.js
- AudioRecordingService keeps CPU awake + shows notification when recording
- Recording survives screen lock via foreground service + wake lock
Also:
- USE_BIOMETRIC permission added to manifest
- androidx.biometric:biometric dependency added to build.gradle
- Haptic fallback to navigator.vibrate when Capacitor plugins unavailable
2026-04-11 03:42:23 +02:00