- Tap callsign on main screen shows dialog with connected nodes
- SvxService tracks node list: ServerInfo + NODE_JOINED/NODE_LEFT events
- Bump to 1.0.4
- Tapping the TG badge opens a group list; picking a group saves it and
reconnects to the server with the new group
- Groups configured in settings (comma-separated), defaults 9,11,12,13
- Auto-connect at app launch to the default group from settings
- MainActivity singleTask, SplashActivity singleTop: re-launching from
launcher or notification never creates a second instance
- Splash skips the 4s animation when the main screen is already open
- Foreground notification shows 'Говорит: CALLSIGN' / 'Последний:
CALLSIGN'; tapping it brings the app back to the front
- Check latest release on startup, show 'update available' dialog with
Update/ Later buttons
- Download APK with progress and install via ACTION_VIEW + custom
UpdateFileProvider (no androidx)
- Request unknown-app-sources permission if needed, resume download on
return to the app
- Decode received Opus audio: handle svxlink self-delimited framing and
provide monotonic PTS (c2.opus.decoder discards output when PTS == 0)
- Keep connection and playback alive in background via SvxService
(foreground service, media playback type)
- Keep screen on while app is open
- Show last talker callsign persistently instead of clearing after 4s
- Bump versionCode to 2, disable lint on release builds