startService
Starts MeshService as a foreground service so the radio link stays alive for the duration of the connection.
The start is gated on ForegroundStartPolicy: when the platform would reject it we do not call startForegroundService() at all. That matters for more than tidiness — a rejected start still leaves ActivityManager expecting the service to reach the foreground, and the resulting watchdog kills the process. Not asking is the only way to be sure.
There is deliberately no retry. Every context that can legally promote this app to the foreground already has its own trigger, and the dominant one — the user opening the app — fires on every MainActivity.onStart(). A background retry has no exemption the original caller lacked, so it can only fail again.